利用CreateProcess打开另一个进程并传递必要的参数?
各位大侠好!我想用CreateProcess打开一个进程,比如自己写的播放器,但是需要给其传递待播放视频的路径和视频名,如何实现该参数的传递,如何让播放器获得该传递参数并正确执行?希望大虾指导...
[解决办法]
我觉得没有办法
。。。。。。
等高手来答。
[解决办法]
ShellExecute();函数
Parameters 参数
[解决办法]
char szCommandLine[] = "c:\\mymp3player.exe 1.mp3";
STARTUPINFO si = { sizeof(si) };
PROCESS_INFORMATION pi;
BOOL bRet = CreateProcess (NULL, szCommandLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi) ;
if(bRet)
{
//创建成功
}
你的播放器用GetCommandline 来获取输入参数,也就是这儿的"c:\\mymp3player.exe 1.mp3"
[解决办法]
app的InitInstance里就可以
[解决办法]
用这个API你还要解析字符串。
这样试试:
for (int i=0;i<__argc;i++)
{
szParam = __argv[i];
}
另外要注意,CreateProcess的第一个参数为NULL时,argv[0]就是exe名称,用的时候注意下,还有就是每个参数最好加一对“”。 你试试
[解决办法]
AfxGetApp()->m_lpCmdLine;