C++ 使用Lua interpreater创建新流程,传递参数失败
我需要有关在CreateProcess()//Windows中传递参数的帮助 我想:C++ 使用Lua interpreater创建新流程,传递参数失败,c++,windows,multithreading,process,lua,C++,Windows,Multithreading,Process,Lua,我需要有关在CreateProcess()//Windows中传递参数的帮助 我想: BOOL status = CreateProcess(L"C:\\Program Files (x86)\\Lua\\lua52.exe", NULL, NULL, NULL, FALSE, NULL, NULL, NULL, &si, &pi); 但是通过传递一些论点 Lua interpreater接受带有Lua脚本的文件,因此我已经准备好了它,并希望执行以下操作: lua52 C:
BOOL status = CreateProcess(L"C:\\Program Files (x86)\\Lua\\lua52.exe",
NULL, NULL, NULL, FALSE, NULL, NULL, NULL, &si, &pi);
但是通过传递一些论点
Lua interpreater接受带有Lua脚本的文件,因此我已经准备好了它,并希望执行以下操作:
lua52 C:\1.lua
例如
我有一些lua脚本的路径,希望lua的interpreate对其进行interpreate,然后从创建的进程中获得lua上的程序结果
我尝试过一些方法,但没有成功 不要忘记:
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);
}
此函数的Unicode版本CreateProcessW可以修改
此字符串的内容。因此,此参数不能是指针
只读存储器(如常量变量或文字字符串)。如果
此参数为常量字符串,函数可能导致访问
违反
运行lua脚本或获得结果时有问题吗?你到底尝试了什么,又是如何失败的?通常,您可以将脚本文件作为第二个参数传递,也可以将NULL传递给第一个参数,将进程名和脚本路径作为第二个参数传递给第二个参数(在进程路径周围用双引号转义空格)。如果这样做会发生什么?@eran和lua脚本都是正常的,得到的结果是问题Ihave@eran确切地说:1)。我在FS(1.lua)上有一个文件,它包含lua脚本(2)。我有Lua interpreater 3)。我想启动Lua interpreater并将脚本提供给它,然后我想得到脚本4)的结果。这就是全部