首页
社区
课程
招聘
[旧帖] [求助]该内存不能为"written",如何解决? 0.00雪花
发表于: 2007-7-28 22:22 6689

[旧帖] [求助]该内存不能为"written",如何解决? 0.00雪花

2007-7-28 22:22
6689
VC++6.0 中嵌入汇编,编译通过但是总出内存错误 ,刚开始在VC中使用汇编,不知哪里的问题 ,请高手不惜赐教!
void CMyDlg::Encode(char * Buffer,short code,int size)
{
.....................................
__asm mov edi,Buffer
__asm xor byte ptr [edi],al   <-这里出错
__asm inc edi
__asm dec ecx
__asm jnz loop2
}

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 1505
能力值: (RANK:210 )
在线值:
发帖
回帖
粉丝
2
void xch(char *buffer )
{

        _asm {
               
                mov edi,buffer
                xor byte ptr [edi],al   
               
              }
}

void main()

{

char buf[]="1133";
xch(buf);

}
我这个怎么没出错
2007-7-29 01:37
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
改一下链接属性
或者直接用loadpe改编绎好的区段属性改为可写
2007-7-29 01:39
0
雪    币: 1505
能力值: (RANK:210 )
在线值:
发帖
回帖
粉丝
4
呵呵,和这个有关系吗?buffer应该是个变量,他修改的应该是堆栈或者data段
2007-7-29 01:49
0
雪    币: 235
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
5
结贴:原来是指针的问题!如楼上所说我往data段上写了数据!
对2位表示由衷的感谢!
2007-7-29 01:52
0
游客
登录 | 注册 方可回帖
返回
//