【发布时间】:2017-06-27 10:38:56
【问题描述】:
我将 IPC 用于共享内存。
我需要用 IPC 打开另一个程序,但我想知道如何传递参数。
下面是我的 IPC 类的执行函数。
int execute(std::string exePath, std::string exeName, int console = 1)
{
SHELLEXECUTEINFOA p_info;
ZeroMemory(&p_info, sizeof(SHELLEXECUTEINFOA)); //초기화
p_info.cbSize = sizeof(SHELLEXECUTEINFOA);
p_info.lpFile = exeName.c_str(); // 파일 이름
p_info.lpDirectory = exePath.c_str(); //파일 위치
p_info.nShow = console; //콘솔 show
p_info.fMask = SEE_MASK_NOCLOSEPROCESS;
return ShellExecuteEx(&p_info);
};
【问题讨论】:
-
您可以使用
lpParameters成员或SHELLEXECUTEINFO,但是如果您不需要提升 - 最好使用Createprocess而不是ShellExecuteEx
标签: winapi ipc shared-memory