C++ LPCTSTR 如何将命令行参数传递给子进程


LPCTSTR applicationName = NUL // NULL => module name from command line
string argument1 = "something";
string argument2 = "anotherthing";
LPTSTR  commandLine = "childpath\child.exe";
success = CreateProcess(
applicationName,
commandLine,
processSecurityAttrs,etc...)

我在这里要做的是尝试将父级的命令行参数传递给孩子。但是LPTSTR,我不知道如何将stringLPTSTR类型结合起来传递给孩子。它给了我类型定义错误。我使用Visual Studio 2013和C++。

根据文档:

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

文档中的示例:

LPTSTR szCmdline[] = _tcsdup(TEXT(""C:\Program Files\MyApp" -L -S"));
CreateProcess(NULL, szCmdline, /* ... */);

相关内容

  • 没有找到相关文章

最新更新