|
麻烦管理删除上个帖子。没有截图火山,无法知道错误,这个帖子重新发布下
易语言:
CreateProcessAsUserA (0, road, 命令行, 0, 0, 0, 524288, 0, start, si, pi)
.版本 2
.DLL命令 CreateProcessAsUserA, 逻辑型, "advapi32.dll", "CreateProcessAsUserA"
.参数 hToken, 整数型, , 0
.参数 lpApplicationName, 文本型, , 0
.参数 lpCommandLine, 文本型, , 0
.参数 lpProcessAttributes, 整数型, , 0
.参数 lpThreadAttributes, 整数型, , 0
.参数 bInheritHandles, 整数型, , 0
.参数 dwCreationFlags, 整数型, , 0
.参数 lpEnvironment, 整数型, , 0
.参数 lpCurrentDirectory, 文本型, , 0
.参数 lpStartupInfo, STARTUPINFOEX, , 0
.参数 lpProcessInformation, PROCESS_INFORMATION, , 0
这样没有任何问题。测试了用。
C++中:
EXTENDED_STARTUPINFO_PRESENT也就是易语言的第七个参数524288,测试也没问题
这样也没问题。
在火山中截图:
、
其中第七个参数如果改为EXTENDED_STARTUPINFO_PRESENT也就二十524288 那么下面的lpStartupInfo这个参数必须为STARTUPINFOEX结构体
结果发现在火山中调用:
创建进程_新 (0, 0, 取字节集指针 (文本到字节集 (命令行)), 0, 0, 假, 524288, 0, 0, si, pi)
出现参数错误。
如果把524288改为0,就可以创建,没有问题,一切正常。但为啥改为524288 就出现参数错误,我需要524288也就是API中第七个参数调用EXTENDED_STARTUPINFO_PRESENT
这个 参数在C++ release X64平台测试和易语言X86测试都没任何问题。
请求管理能指导,或者帮忙写一个。
|
|