1

我的系统中安装了 Visual Studio 2005 和 Win 7。在 c++ 中,我使用 URLDownloadToFile() 从本地服务器下载 .exe。下载后我需要运行这个 .exe 文件。我可以使用 system("path to the .exe file") 来做到这一点,但它会在后台打开一个 cmd 窗口。谁能告诉我我可以使用什么其他方法来替换不会在后台打开 cmd 窗口的 system() 。

我也尝试过以下方法

 1. ShellExecute(NULL,(LPCWSTR) "explore",(LPCWSTR) "C:/Users/ay\\AppData/Roaming/path-here/file.exe", NULL, NULL, SW_SHOWNORMAL);
 2.     LPTSTR szCmdline = _tcsdup(TEXT("C:\\Users\\ay\\AppData\\Roaming\\path-here\\file.exe -L -S"));
        CreateProcess(NULL, szCmdline,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);

但是这些命令都不能开始运行我的 .exe 文件。提前致谢。

4

1 回答 1

0

下载成功后,请尝试以下解决方案。

CString exeFileName;
ShellExecute(NULL, _T("open"), exeFileName.GetBuffer(), NULL, sExePresentInDirectory, SW_SHOWNORMAL);

exeFileName.ReleaseBuffer();

我试过了,效果很好。

如需更多帮助,请参阅

于 2013-03-26T05:41:46.810 回答