阅读:967回复:0
我在 OnW32DeviceIoControl(PIOCTLPARAMS pDIOCParams) 里面用 SHELL_LocalAlloc 分配内存竟然不成功!
switch (pDIOCParams->dioc_IOCtlCode)
{ case VXD_OPEN_PORT: break ; case VXD_CLOSE_PORT: break ; case VXD_EXEC_PROG: { DWORD rCode; dout << \"Trying to Execute telnet.exe\" << endl; PPVOID la; WinExec.nCmdShow = 1; WinExec.lpCmdLine = SHELL_LocalAllocEx(LPTR + LMEM_STRING,0,\"c:\\\\windows\\\\telnet.exe\",la); if (WinExec.lpCmdLine==0) sprintf((char*)pDIOCParams->dioc_OutBuf,\"%s\",\"Alloc Error!\");break; rCode = SHELL_CallDll(\"KERNEL\",\"WINEXEC\",sizeof(WinExec),&WinExec); SHELL_LocalFree(WinExec.lpCmdLine); if (!rCode) sprintf((char*)pDIOCParams->dioc_OutBuf,\"%s\",\"Finished Execute but failed!\"); else sprintf((char*)pDIOCParams->dioc_OutBuf,\"%s\",\"Finished Execute successed!\"); } break; } return 0; |
|