STARTUPINFO stStartUpInfo;
PROCESS_INFORMATION pProcessInfo;
LPCTSTR pCmdLine = "C:\\Program Files\\Microsoft Visual Studio\\Common\\MSDev98\\Bin\\Msdev.exe";
    ZeroMemory(&stStartUpInfo, sizeof(STARTUPINFO));    stStartUpInfo.cb = sizeof(STARTUPINFO);
    stStartUpInfo.dwFlags = STARTF_USESHOWWINDOW;
    stStartUpInfo.wShowWindow = SW_SHOWDEFAULT;    CreateProcess((LPTSTR)pCmdLine,"my.cpp", NULL, NULL, FALSE,
  NORMAL_PRIORITY_CLASS, NULL, 
  NULL, &stStartUpInfo, &pProcessInfo);

解决方案 »

  1.   

    ShellExecute  (NULL,  "open",  "My.cpp",  NULL,  NULL,  SW_SHOW); 
    这里的这个my.cpp是在那里的?如果可以得话,加上完整的目录看看。
      

  2.   

    可能你的.cpp文件没有和vc关联(文件关联),如果你双击这个文件,vc会自动打开他,那这个函数才起作用或者
    ShellExecute(NULL,"open","msdev.exe","my.cpp",NULL,SW_SHOW);
      

  3.   

    在VC中如何知道某个文件的关联程序?  比如:my.wav, my.htm, my.sol, .....
      

  4.   

    可以你已经打开了VC,把所有的VC关了,再重新执行生成的可执行文件!
      

  5.   

    agree with xpmao(),
    “My.cpp”前要加上完整的路径
      

  6.   

    delphihero(阿蒙) 的方法可以打开,谢谢!再问一下:在VC中如何知道某个文件的关联程序? 
        比如:my.wav,  my.htm,  my.sol,  .....
      

  7.   

    其实文件关联是系统的事,也可以编程实现,最简单的知道关联的程序是什么,即使双击文件,当然你非要去查注册表,hoho。(算你厉害)