摘要: 问题1:通过POST方式提交给后台的数据出现了乱码,用部分浏览器测试却是好的。解决办法: 在web.config文件中加上。如果有中文必须是GB2312。如果是纯数字和字母的输出可以使用UTF-8。 问题2:提交带有跨站攻击特性的字符串时,比... 阅读全文
posted @ 2014-04-25 09:12 莫问哥哥 阅读(181) 评论(0) 推荐(0)
摘要: 针对接口编程。简简单单的六个字。说起来简单,想要做到这一步,需要花点时间和精力。 下面,我讲通过自己做过的项目和经验来谈谈我的理解。如果有理解不对的地方,还请各位指正。情景: 现在,有一个门禁需要驱动(这里的驱动指的是控制)。第一步:必须先建立连接;第二部:发送传输命令,让门磁打开,或是关闭。第三步:关闭连接。 说到这里,我想起了我自己的开发经历。相当长的一段时间,我会这样做。(如下) Class Door{ public void Connect() { Console.WriteLine("Connected the Door!")... 阅读全文
posted @ 2014-03-27 20:25 莫问哥哥 阅读(2421) 评论(0) 推荐(0)
摘要: 1、新建如下图点击OK依然点击OK出现了如上图的节面,就像窗体一样。然后 你就想干什么干什么。这个做好之后,这个是我设计的窗体。然后 就添加 外部可以调用的接口了。如果你不想让外部调用 就 可以直接像平时用Delphi一样,该干什么干什么。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->procedure Set_SnapBuffer(Value: Integer); safecall; procedure Set_Visible(Val 阅读全文
posted @ 2014-03-21 15:52 莫问哥哥 阅读(5670) 评论(0) 推荐(0)
摘要: 作用: ret 将 栈顶数据出栈到IP retf 将 栈顶数据出栈到IP ,然后再次将栈顶数据出栈到CS这样一来,可以使程序跳转到已经定义好了的代码段去执行。 call 语法 call s0 (如此方式是通过位移来转移) 作用:和ret正好相反,它的作用是将 IP压人栈中,然后跳转到 标号出执行。 call near ptr s0 (如此方式是通过目的地址来转移) 作用:将CS入栈,然后将IP入栈。最后 CS 里面的值 为 s0处的段地址,IP里面的值 为 s0处的偏移地址 call ax (如此方式是通过寄存器中的位移来转移) 作用:将I... 阅读全文
posted @ 2014-03-21 15:52 莫问哥哥 阅读(517) 评论(0) 推荐(0)
摘要: procedure TForm1.cxGrid1DBTableView1CustomDrawCell( Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);begin //Item确定列(ID列的索引),RecordViewInfo确定行(Index行的索引) //可以定位到某一行改变颜色{if (AViewInfo.Item.ID = 0) and (AViewInfo.RecordViewInfo.Index = 0) 阅读全文
posted @ 2011-05-06 11:35 莫问哥哥 阅读(5746) 评论(0) 推荐(0)
摘要: 怕自己忘记了,最近记忆力好差。所以写下来比较好。 先拖frxReport,然后双击frxreport 新建一个报表。接下来就要新建参数了。选择 报表 ---> 变量 会弹出一个界面。这里我新建了三个变量 Title 、UserName、UnitName 。 现在,报表里面的参数准备好了。接下来就来写代码。 首先,在FormCreate事件里面写LoadReport 然后写一个方法。procedure TfrmHGBAYJ.PrintData;begin if qry.IsEmpty then Exit; frxReport1.Variables['Title'] := Q 阅读全文
posted @ 2011-04-15 09:13 莫问哥哥 阅读(5193) 评论(0) 推荐(0)
摘要: var file_name:string;file_name:='c:\luther.gliethttp.txt';FileWrite(com.log_fd, PChar(file_name)^, length(file_name));文件是同一种类型元素的有序集合,是内存与外设之间传输数据的渠道。文件的本质是一个数据流,所有的文件实际上是一串二进制序列。文件管理包括:1、文件操作。2、目录操作。3、驱动器操作。三部分。1、常见文件操作函数和过程。1.1、AssignFile过程作用:将一个外部文件的文件名与一个File类型的变量关联,并对变量进行初始化。原型:procedur 阅读全文
posted @ 2011-03-22 11:40 莫问哥哥 阅读(376) 评论(0) 推荐(0)
摘要: 转移指令转移类型转移方式转移含义Jcxz近转移Jcxz X当CX为0时转移到标号X处。Loop近转移Loop X当CX不为0时转移到标号X处。Ret短转移 或 近转移RetSP加2,将栈顶元素压入IP。Retf段间转移RetfSP加2,将栈顶元素压入IP , SP加2,将栈顶元素压入CS 。Call近转移Call XIP入栈,SP减2,IP=AX。近转移Call AXIP入栈,转移到AX处执行。也就是IP=AX。段间转移Call far ptr XSP减2,CS入栈, SP减2,IP入栈。CS = X所在的段IP =X所在的偏移地址。近转移Call word ptr [bx]SP减2,IP入栈 阅读全文
posted @ 2011-03-10 17:31 莫问哥哥 阅读(207) 评论(0) 推荐(0)
摘要: 为什么要写多个段的程序,我们之前只有一个代码段。现在要编写多个段的程序,是因为,程序有时候需要处理一些数据,然而这些数据是我们已经给出的,写好了的。也就是说,是程序里面预先定义好了的。  我们知道,在windows下编程的时候,你不得不考虑到操作系统的屏蔽。这个时候,资料显示,有一段安全的内存空间,也就是0:200 ~0:2FF 这段内存空间可以供我们存放数据,但是,如果我们的数据过多。这个时候就必须得使用多个段来保存数据。  下面来看看,多个段的程序结构:[代码]  以上的代码实现了数据的倒序排列。也就是将 123 变成了 321。  以上程序,定义了数据段data和栈段stack,然后用栈 阅读全文
posted @ 2011-02-16 09:44 莫问哥哥 阅读(238) 评论(0) 推荐(0)
摘要: 之前的汇编代码,我们都是在debug下写的,用A命令写代码,用T去执行的。但是,编写一个完整的程序代码,我们还没做过。现在,让我们看看一个完整的程序如生成。  先让我们看下下面的代码: (汇编代码随便在那个地方写都没问题,最好是有行号显示的编辑器,因为这样就好找错误,我目前用的是记事本) [代码]  start:  mov ax,1  ;将数字1传送到ax寄存器  mov bx,1  ;将数字1传送到bx寄存器  add ax,bx  ;将ax和bx里面的值相加,存到ax寄存器  mov dx,ax  ;将ax寄存器里面的结果传送到dx  mov ax,4c00h  ;这行代码和下面的一行,我 阅读全文
posted @ 2011-02-15 14:14 莫问哥哥 阅读(214) 评论(0) 推荐(0)