|
[求助]C语言如何实现ShellCode的异或变形
char shellcode[1024] = "\xEB\x02\xEB\..."; int i; for (i = 0; i < sizeof(shellcode); i++) { shellcode[i] ^= 0x01; } |
|
[求助]菜鸟问个win32汇编中dw的问题(已解决)
前面说的有些笔误,已改正,dw是定义两个字节长的伪指令,dd是定义两个字长的伪指令。 |
|
[求助]菜鸟问个win32汇编中dw的问题(已解决)
在汇编中,dw伪指令是定义一个两字节的变量。如果这个是变量名的前缀说明符,他指出该变量是double word变量,即是4个字节的变量。如: wVar dw 0 //这里是字义一个2个字节的变量 dwVar dd 0 //这里的dwVar是指明这个变量是个双字的整形变量。 |
|
[求助]汇编里面怎么进行数据合并的, 类似c的memmove
如果是可显示ASCII码的合并,可以使用API函数的lstrcat函数。 |
|
[求助]汇编里面怎么进行数据合并的, 类似c的memmove
invoke RtlMoveMemory,offset Destination,offset Source,Length |
|
奇怪的问题:难道是编译器犯了错误?[讨论]
呵呵,是的,是你理解错了,函数如果写在前面,必须写在.code下面,而在start标号前面才行。因为程序是从start标号开始执行的。 |
|
[求助]如何在exe文件中加一句汇编指令?
在exe中找一个程序没使用的地方,然后用jmp指令跳到这个地方,写下你的指令,再跳回原来的地方继续执行。 |
|
[求助]CRC32的逆向算法怎么用VB来实现呢?
CRC是不可以逆向,他是属于单向加密,如果数据量不长,还可以穷举。 |
|
[求助]用KOL+MCK 如何编写程序
下面的内容是从Delphi大富翁那里转过来的,更详细的你可以到这里去看: http://www.delphibbs.com/delphibbs/dispq.asp?lid=1290924 想用Delphi写出只有几十K的程序吗,想就往下看吧:) 注:下面的教程都是以Win2000Pro(SP3)+Delphi6(SP2)+KOL1.42+MCK1.42为平台讲解的。 一、KOL是什么?KOL能做什么? MCK是什么?MCK能做什么? KOL是一套对象库,免费而且开放源代码,大家可以http://bonanzas.rinet.ru/去下载到 它。它能够使Delphi编出尺寸非常小的32位Windows图形用户界面的应用程序。 目前支持的Delphi版本:Delphi6,Delphi5,Delphi4,Delphi3和Delphi2。 使用KOL在D2-D5中编写的最小图形界面程序(只有一个窗体的空应用程序),只有13K左右。 在D6中为20K左右。 MCK一套以KOL为基础的可视化组件,用它就像用VCL一样的方便省事而且可以达到和KOL一 样的效果。 二、KOL和MCK的安装 1、http://bonanzas.rinet.ru/下载到KOL和MCK后,把它们解压到你自已想要的目录中。 把KOL中的kol.pas拷贝到MCK目录中。 2、运行Delphi选择Tools菜单->Environmaent Options...->Library页,选择"Library Path"右边的按钮会弹出"Directories"对话框,然后添加KOL和MCK的路径。 3、打MCK目录中的包文件安装。 三、如何创建一个KOL工程 1、在Delphi中新建一个应用程序,然后保存(这一步一定要做),保存时工程名一定不要改 变,窗体名可以随便。 2、在控件面板KOL中放一个TKOLProject控件到窗体并设置projectDest属性为你想要的工 程名比如说是"KOLSample",再把dprResource属性设为真(这关系到你能不能用Project-> Options...中的设置设置你的程序图标以及程序的版本号)。 3、在控件面板KOL中放一个TKOLForm控件到窗体,这个控件和TForm差不多的,保存并关 闭当前工程。 4、这时候你就会在保存目录中发现一个名为"KOLSample"的工程,聪明的你可能会想到 Project1这个工程不再需要了,是的你可以毫不留情的删掉它(其它的就不要删了)。打 开KOLSample,运行它,看看生成的程序,怎么样?:) 注:其实在KOL的老家还有很多KOL爱好者写的第三方KOL可视化组件,如要传载请注明 出处。 待继...... SQUALL[S&A SSC] 2002.8.27 由于KOL的教程非常少,就连帮助都不是很全再加上我 也是刚开始使用它,我也是边编译帮助边加入我自已的 使用体会,如有不当多处,还请大家多多交流。 最酷的程序员用KOL by Superpage 前言 VCL 库是Delphi程序员熟知的,她几乎成了Delphi RAD技术的代言人。 VCL拥有世界上最大最丰富的控件资源涵盖了软件开发的各个方面,远远超过其他开发 工具,是每个程序员所垂涎。VCL的优点不再多说,现在我要向各位Delphi兄弟介绍另 一套Delphi上的类库:KOL。 "没有一个字节的代码是废物" (我写的第2个KOL程序,35K,Aspack压缩后28K,1个Exe不需要任何运行库) 现在的VCL应用程序虽然很优美,但还不够精简(a little oversized),一个空空 的GUI程序至少有270K(Delphi5),原因是Borland的编译器技术虽然精湛,具有 SmartLink技术(只把用到的代码连接到EXE),但对于很多面向对象编程钟采用了大量 的的方法继承,虚方法表,使得 SmartLink也无能为力。而且随着 Delphi 升级,基本 对象的方法和属性的代码也越来越大。采用分离的运行库编译虽然可以减小EXE,但要求客 户端安装VCL运行库是困难的,除非微软让步......(不说也罢)。不过总的说来,虽然基 于VCL的程序有冗余代码,但相对其他同类类库,EXE尺寸已经算很不错了,一般在数百K到 1、2M左右。 其实我们很早就听说直接用WinAPI可以创建很小的程序(有个著名的TestGUI.DPR),因此 有些程序员就打算自己建VCL以外的类库,具有VCL主要的功能,创造精简的程序。Delphi 上的非VCL类库目前我所见到的有3个,分别为 ACL,XCL/KOL 都出自俄罗斯(老毛子高人辈 出,而且是历史上很多革命的发源地)。其中最具有革命性的就属KOL库,作者 Vladimir Kladov 在1999年就开始设计 XCL,XCL出到1.86(2000年7月)特点是重写VCL,删除不必要使用很 少的对象属性和方法,其体系与VCL类似,也是对象继承方式。 到2000年,Vladimir Kladov 发现XCL虽然有效,但不能根本解决问题,或者说有可能重蹈 VCL库覆辙,于是他停下了XCL,推出了更大胆的计划KOL。其技术要点是设计了一个巨无霸对 象TControl,避免了对象继承,用不同的NewXXXX方法创建对象,使得编译器可以轻松的剔掉 冗余代码,另外还有替换System单元等多种手段。听起来很不可思议,是吧?哈哈,但我玩过 最新的KOL,发现它的确实厉害,KOL的目标并不是取代VCL,而是帮助我们完成一些功能齐全的 ,尺寸紧凑的专用EXE(最小的KOL GUI 程序只有9.5k),这在我们将来设计一些通过网上分发 或嵌入设备程序会很有用。另外,KOL中重写了的TStrList、TList等大量对象比原来的VCL效 率更高。 KOL的程序设计难吗? (以下部分内容据我今天(2001/5/14)刚从网上更新的0.74KOL,0.73MCK库而来,而KOL最近 更新很频繁,请大家关注其网站)早期的KOL的程序开发是完全"非可视"的,其标准例子可看出。 不过用KOL的程序员,绝非等闲之辈,相信 VC++/MFC的哥们也会很容易上手,因为和 WinAPI打 交道其实也很亲切,但KOL绝对是一个优越面向对象的类库,建新程序中自己手写的代码已经不算多了。 但Kladov又推出一个可视开发工具 MCK(镜象构件库),非常巧妙的利用了Delphi的IDE实现了可 视开发。当然很多人建议设计VCL工程翻译工具可能更方便,但现在还没人去做,毕竟是个革命性的 东西,需要更多人参与。我个人认为MCK还算个很好的思路,至少在新工程开发上不难。但传统的Delphi 程序员一定要有思想准备,你的第一个KOL程序花的时间肯定是你第一个VCL程序的数倍甚至更多(第一个 VCL程序只要按一下F9就行了,呵呵)将来的KOL会“可视”到什么程度,我的估计应该很乐观。现在KOL已 经有OLEdb 和 DBF 数据库的控件了,由于 VCL的控件大多源码开放,KOL的控件群出现指日可待。说到可 视化工具MCK,我真的很佩服Kladov的匠心独具,Kladov有一句话很有意思: “KOL/XCL从一开始就没打算设计成可视化开发方式...我反复的告戒自己KOL可视化是不可能的,可是我熬 了4个通宵后,事情好象办成了...” 请看我制作的一个KOL程序:27k Features: 1.执行程序大小 22k(用了 System.dcu 替换,StripReloc 和 UPX 压缩),无需任何外部运行库. 2.OLE DB 数据库访问,数据源设置. 3.HTTP 通讯演示。(用我的 Winettool.pas 单元) 4.使用了RichEdit 5.测试了窗口透明属性(需 Win2k支持) 最新进展 我已经把 KOL 运用到 ActiveX Control 上了,我写了个KOL的ActiveForm 编译出来有170k(Delphi 5最小的ActiveForm也要370k),但该OCX无法使用System.dcu 替换,StripReloc 和 UPX 等手段,我是用 aspack 压缩的,可以压到104k. 虽然未使用 Forms.pas,使用了 OLE系列单元,主要是VCL里OLE初始化对象的代码冗余比较大,所以应该还 可以继续优化。到100K以下应该没问题。 其他 最重要的:KOL主页上看看吧。 你写的第一个KOL Form 注意上的 defaultPosition defaultSize 属性请设为 False. 希望各位Delphi兄弟有空交流KOL开发经验。liwensong@hotmail.com |
|
|
|
|
|
[求助]请达人帮我看看这段关于PostMessage的代码
你是向目标程序发送回车键消息吧。你向发送的目标程序窗口必须响应回车键消息并处理这消息才行。 |
|
[求助]如何将其变成有界面的应用程序
要使用Windows的界面,要用支持Windows编程的编译器(像VC、BC++等)。还必须使用Windows的编程(调用Windows的API生成窗口界面) |
|
用VC6.0编程用的MSDN不用太新对吗
VC中在WinMain中传入的nCmdShow参数值本身便是使用的ShowWindow函数中定义的nCmdShow参数。 |
|
用VC6.0编程用的MSDN不用太新对吗
PostQuitMessage函数就是向程序发送一个WM_QUIT消息,并将参数放到wParam参数上发给程序。 WinMain是由VC的自动生成的运行代码调用的,所以WinMain函数中的nCmdShow也是VC自动生成运行代码在调用时传进来的。 |
|
[求助]汇编代码问题
最初由 zhenkyss 发布 mov [edx],0x12345678 mov al,byte ptr [edx] ; al == 78 mov bx,word ptr [edx] ; bx == 7856 |
|
[求助]汇编代码问题
最初由 muwanqing 发布 edx的值被lstrlen函数改变了。API函数是不会保存eax/edx和ecx的值的,如果你有重要的数据不想被改变,在调用API函数时请将数据push保存起来,或者暂时传到esi/edi或ebx寄存器中。API函数不会改变这三个寄存器的值。 |
|
[求助]汇编代码问题
不知道,现在我只能用假设的方法回答你的问题。现在假设aaaa保存着bbbb地址。bbbb地址保存着字符串"abcdef"。那么。 mov edx,aaaa ; 将bbbb的地址传给edx ........... xor esi,esi ; esi清零 xor eax,eax ; eax清零 mov cl,byte ptr [esi+edx] ; 将bbbb保存着的字符串"abcdef"中的"a"取出放到cl中。 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值