能力值:
( LV5,RANK:70 )
|
-
-
2 楼
嘿嘿~~··
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
哈哈 2楼现身了
|
能力值:
( LV5,RANK:70 )
|
-
-
4 楼
我写驱动写的电脑报废了
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
怎么不在虚拟机上调试?
|
能力值:
( LV5,RANK:70 )
|
-
-
6 楼
开不起DNF........
|
能力值:
( LV5,RANK:70 )
|
-
-
7 楼
问题解决了没
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
没有啊... 解决了也不会在这里求助了
|
能力值:
( LV5,RANK:70 )
|
-
-
9 楼
我现在的方法是先做好一个生成工具,生成N句 _emit XXXX,然后把生成的代码直接拷贝到我的代码里面........................
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
难道除了使用_emit就没别的方法了吗?我想按照上面代码的思路,把rep stosb指令的机器码压进堆栈,借助ret指令(pop esp to eip)去执行rep stosb指令,可惜失败了
|
能力值:
( LV5,RANK:70 )
|
-
-
11 楼
不懂~~~~~~~~
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
我想让__asm{...}这里面指令 等效于 __asm{_emit 0x90 ......}
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
VC++6.0里内嵌ASM汇编文件里用
Value_1 DB 64h dup(90h)
可以做到。我想类似的把汇编代码内嵌到C语言代码里也可以吧。
你可以试试。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
谢谢怀特迈恩啊
但我不想用宏汇编,我只想用VC内联汇编实现,难道内联汇编的局限性就这么大吗?
|
能力值:
( LV3,RANK:20 )
|
-
-
15 楼
有两点供楼主参考:
1.楼主一定要填90吗? NOP等效指令可以吗?如7字节的lea esp,[esp],这样可以加快速度
2.楼主可以用宏来简化,示例如下:
#define NOP2BLK __asm nop __asm nop
#define NOP4BLK NOP2BLK NOP2BLK
#define NOP8BLK NOP4BLK NOP4BLK
#define NOP16BLK NOP8BLK NOP8BLK
#define NOP32BLK NOP16BLK NOP16BLK
#define NOP64BLK NOP32BLK NOP32BLK
void test()
{ //一次填64个NOP
NOP64BLK
//一次填96个NOP,在__asm块中也可以用
__asm{
NOP64BLK NOP32BLK
}
}
|
能力值:
( LV5,RANK:70 )
|
-
-
16 楼
楼上好思维,我刚也在MSDN上看到了宏
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
15楼威武,这办法不错。
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
学习下·呵呵
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
哈哈
半道出家厉害哈~ 就使用宏了
|
|
|