能力值:
( LV2,RANK:10 )
|
-
-
2 楼
内联汇编怎么样
|
能力值:
(RANK:410 )
|
-
-
3 楼
_SECURITY_ATTRIBUTES = packed record
nLength:LongWord;
lpSecurityDescriptor:Pointer;
bInheritHandle:BOOL;
end;
TSecurityAttributes = _SECURITY_ATTRIBUTES;
PSecurityAttributes = ^TSecurityAttributes;
_STARTUPINFO = packed record
cb:LongWord;
lpReserved,lpDesktop,lpTitle:pChar;
dwX,dwY,dwXSize,dwYSize,dwXCountChars,dwYCountChars,dwFillAttribute,dwFlags:LongWord;
wShowWindow,cbReserved2:Word;
lpReserved2:pByte;
hStdInput,hStdOutput,hStdError:THandle;
end;
TStartupInfo = _STARTUPINFO;
pStartupInfo = ^_STARTUPINFO;
_PROCESS_INFORMATION = packed record
hProcess,hThread:THandle;
dwProcessId,dwThreadId:LongWord;
end;
TProcessInformation = _PROCESS_INFORMATION;
PProcessInformation = ^_PROCESS_INFORMATION;
function CreateProcessInternal(hToken:THandle;
lpApplicationName,lpCommandLine:pWideChar;
lpProcessAttributes,lpThreadAttributes:PSecurityAttributes;
bInheritHandles:BOOL;
dwCreationFlags:LongWord;
lpEnvironment:Pointer;
lpCurrentDirectory:pWideChar;
lpStartupInfo:pStartupInfo;
lpProcessInformation:PProcessInformation;
hNewToken:PHandle):BOOL; stdcall;
function CreateProcessInternal; external 'kernel32.dll' name 'CreateProcessInternalW';
|
能力值:
( LV3,RANK:30 )
|
-
-
4 楼
谢谢斑竹,斑竹这是写转换VC的还是你自己的单元,学习中。。
|
能力值:
(RANK:410 )
|
-
-
5 楼
从你给的函数中转换过来的,一些结构则是从MSDN中转换过来的。
|
能力值:
( LV3,RANK:30 )
|
-
-
6 楼
CreateProcessInternalW 这个参数与CreateProcessInternal参数是不是一样的?
|
能力值:
(RANK:410 )
|
-
-
7 楼
//我定义是CreateProcessInternal函数其实就是CreateProcessInternalW函数,并不是两个函数啊。
function CreateProcessInternal; external 'kernel32.dll' name 'CreateProcessInternalW';
|
能力值:
( LV3,RANK:30 )
|
-
-
8 楼
谢谢斑竹了!
|
能力值:
( LV3,RANK:30 )
|
-
-
9 楼
还有问题,我ring3 hook CreateProcessW CreateProcessInternal 还是不能拦截
winexec('c:\windows\system32\cmd.exe',1);
不知道是什么原因!
|
能力值:
(RANK:410 )
|
-
-
10 楼
对这方面没有实践过,不太清楚。
|
能力值:
( LV4,RANK:50 )
|
-
-
11 楼
试过 CreateProcessInternalA 了吗?
只勾了Unicode的W有时不一定奏效,Windows中很多都是ANSI的。
|
|
|