VC用ShellExecute调用网络游戏 梦幻西游 ,调用后程序开始也能打开,不过打开后会提示获取服务器列表失败,检查更新失败,然后就自动关闭了,直接双击EXE文件打开就没有问题,不知道是哪出现问题了,麻烦大家给解决一下。。我是这么调用的:ShellExecute(this->m_hWnd,NULL,L"F:\\Game\\梦幻西游\\my.exe",NULL,NULL,SW_SHOW);前面的句柄换了几个都不行,用空的不行,用GetDesktopWindow函数获取桌面句柄也不行
参数中没有指定工作目录引起的。
这样写就行了:
ShellExecute(NULL,NULL,L"F:\\Game\\梦幻西游\\my.exe",NULL,L"F:\\Game\\梦幻西游",SW_SHOW);
这样写就行了:
ShellExecute(NULL,NULL,L"F:\\Game\\梦幻西游\\my.exe",NULL,L"F:\\Game\\梦幻西游",SW_SHOW);
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2016-09-20
postmessage和sendmessage 两个是程序间互相通知的消息,不能建立/打开新程序的....
你用shell,shellexecute有时候打开不了应该是因为路径的问题,你应该选的不是完全路径, "a.exe" 如果你执行的程序没有这个就打开失败的.
方法一,你用完全路径打开a.exe
如把路径改成如此 "d:\program filse\a.exe"
方法二,你的程序和a.exe放同一个目录,这样你用a.exe 可以访问到
方法三(不建议),在计算机里里面设置PATH目标路径
本回答被提问者采纳
你用shell,shellexecute有时候打开不了应该是因为路径的问题,你应该选的不是完全路径, "a.exe" 如果你执行的程序没有这个就打开失败的.
方法一,你用完全路径打开a.exe
如把路径改成如此 "d:\program filse\a.exe"
方法二,你的程序和a.exe放同一个目录,这样你用a.exe 可以访问到
方法三(不建议),在计算机里里面设置PATH目标路径
本回答被提问者采纳