我试图在Windows 7上的windows visual studio 2012专业版上使用visual c ++打开一个程序。代码将顺利运行,但实际上不会打开程序。我也没有得到任何构建错误。这是我的代码
#include <iostream>
#include <Windows.h>
int main ()
{
STARTUPINFO si;
PROCESS_INFORMATION pi;
ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );
if (!
CreateProcess
(
TEXT("C:\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"),
NULL,NULL,NULL,FALSE,
CREATE_NEW_CONSOLE,
NULL,NULL,
&si,
&pi
)
)
{
std::cout << "Unable to execute.";
}
}
我正在尝试打开谷歌浏览器作为测试尝试。此外,我得到了部分代码和本网站的一些帮助http://www.cplusplus.com/forum/beginner/48283/我会感激任何帮助!
编辑:
现在我知道createProcess函数正在运行。为什么我尝试用c ++打开文本文件,没有错误,但实际的文本记事本不会打开。这是代码
STARTUPINFO si;
PROCESS_INFORMATION pi;
ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );
if (!
CreateProcess
(
TEXT("C:\\Users\\Mohammed Mehdi\\Documents\\Test\\Test.txt"),
NULL,NULL,NULL,FALSE,
CREATE_NEW_CONSOLE,
NULL,NULL,
&si,
&pi
)
)
{
cout << "Unable to execute.";
}
答案 0 :(得分:3)
我认为你错过了'\'。
而不是TEXT("C:\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe")
尝试
TEXT("C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe")
答案 1 :(得分:0)
对于问题的第二部分,您正在尝试使用自己的txt作为过程。那行不通。而是使用记事本:
TEXT("C:\\Users\\Mohammed Mehdi\\Documents\\Test\\Test.txt")
收件人:
TEXT("C:\\windows\\system32\\notepad.exe /A C:\\Users\\Mohammed Mehdi\\Documents\\Test\\Test.txt")