0

我需要帮助在 CreateProcess() //Windows 中传递参数

我想要:

BOOL status = CreateProcess(L"C:\\Program Files (x86)\\Lua\\lua52.exe", 
NULL, NULL, NULL, FALSE, NULL, NULL, NULL, &si, &pi); 

但是通过一些论点....

Lua解释器接受带有lua-scripts的文件,所以我已经准备好了并想做:

lua52 C:\1.lua

例如...

我有一些 lua 脚本的路径,并希望 Lua 的解释器对其进行解释,然后从 Created 进程中获取 Lua 上程序的结果。

我已经尝试了一些方法来做到这一点,但没有成功。

4

2 回答 2

0
static STARTUPINFO si;
static PROCESS_INFORMATION pi;

int main ()
{
    ZeroMemory (&si, sizeof si);
    ZeroMemory (&pi, sizeof pi);

    si.cb = sizeof si;

    wсhar_t command [] = L"\"C:\\Program Files (x86)\\Lua\\lua52.exe\" C:\\1.lua";

    BOOL status = CreateProcess (0, command, 0, 0, FALSE, 0, 0, 0, &si, &pi);

}
于 2012-06-28T15:50:33.863 回答
-1

不要忘记:

此函数的 Unicode 版本 CreateProcessW 可以修改此字符串的内容。因此,此参数不能是指向只读内存的指针(例如 const 变量或文字字符串)。如果此参数是一个常量字符串,该函数可能会导致访问冲突。

于 2012-07-04T13:04:45.790 回答