首页
社区
课程
招聘
[旧帖] 求帮助 0.00雪花
发表于: 2012-3-26 22:35 3110

[旧帖] 求帮助 0.00雪花

2012-3-26 22:35
3110
汇编写一个WINFORM的CMD,通过管道,命令可以执行,但是获取不到输出值,求解
代码:
_CreateCmd proc hWnd
LOCAL hsi:STARTUPINFO
LOCAL pi:PROCESS_INFORMATION
LOCAL sa:SECURITY_ATTRIBUTES
LOCAL bytesRead
LOCAL szBuffer[4096]:byte
LOCAL hRead:DWORD
LOCAL hWrite:DWORD
LOCAL ExitCode
xor eax,eax
mov bytesRead,eax
mov sa.nLength,sizeof SECURITY_ATTRIBUTES
mov sa.lpSecurityDescriptor,NULL
mov sa.bInheritHandle,TRUE
mov hsi.cb ,sizeof STARTUPINFO
invoke GetStartupInfo, addr hsi
mov        eax,hRead
mov        hsi.hStdInput,eax
mov        eax,hWrite
mov hsi.hStdOutput,eax
mov hsi.hStdError, eax
mov hsi.wShowWindow,SW_HIDE
mov hsi.dwFlags,STARTF_USESHOWWINDOW or STARTF_USESTDHANDLES
invoke GetDlgItemText,hWnd,ICE_CMD,offset CMDbuffer,offset CMDbuffer
.if eax==0
        invoke MessageBox,hWnd,offset ERRBuffer,ERRBuffer,MB_ICONERROR
.else
invoke lstrcat,offset szCMDEXET, offset CMDbuffer
invoke MessageBox,hWnd,offset szCMDEXET,offset szCMDEXET,MB_OK       
invoke CreatePipe,addr hRead, addr hWrite,addr sa,0
invoke CreateProcess,NULL,offset szCMDEXET,NULL,NULL,TRUE,NULL,NULL,NULL,addr hsi,addr pi
invoke CloseHandle,hWrite
.while TRUE

invoke RtlZeroMemory,addr szBuffer,sizeof szBuffer
lea esi,szBuffer
invoke ReadFile,hRead,esi,sizeof szBuffer,addr bytesRead,0
invoke MessageBox,hWnd, addr szBuffer,addr szBuffer,MB_OK

;.if eax!=NULL
invoke lstrcat,addr strResult,addr szBuffer
invoke SetDlgItemText,hWnd,ICE_OVER,offset strResult       
invoke OutputDebugString,addr szBuffer
;.else
;mov eax, FALSE
;ret
;.endif
;invoke CloseHandle,hRead
.endw

.endif
mov eax,TRUE
ret  
_CreateCmd endp

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

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 355
活跃值: (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
没人吊啊,小白求救啊~
2012-3-27 08:00
0
雪    币: 351
活跃值: (22)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
GetLastError?
2012-3-27 15:26
0
雪    币: 355
活跃值: (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我没有用GetLastError调试,我回去调试一下,但是我用MESSAGEBOX,输出CMD执行的返回信息,但是里面没有返回信息,估计是创建进程或者是ReadFile时候,有问题,具体找不到啊,大牛啊,帮帮忙吧
2012-3-27 16:27
0
游客
登录 | 注册 方可回帖
返回
//