WinExec的最大用处是运用.exe程序,但小弟最近发现一点问题拿三个程序做实验 1.NOTEPAD.EXE    记事本
                 2.msdev.exe      大家熟悉的VC6
               3.Edge.exe       SolidEdge一款三维设计软件这三个程序在Windows开始运行里不打路径直接打可执行程序的名字都可以直接运行但是到了WinExec里就不一样了1.WinExec("NOTEPAD.EXE", SW_SHOWNORMAL); //运行成功
                            2.WinExec("msdev.exe", SW_SHOWNORMAL); //运行成功
                            3.WinExec("Edge.exe", SW_SHOWNORMAL); //没有反映-_-!再拿EXCEL.EXE做实验也是同样...有高手知道这是为什么吗?怎么解决这个问题

解决方案 »

  1.   


    http://www.vckbase.com/document/viewdoc/?id=416
      

  2.   

    环境变量path里有edge和excel程序的路径吗?
      

  3.   

    为什么要用WinExec??
    用ShellExecute...
    用法:ShellExecute(NULL,"open",程序名,NULL,程序路径,SW_SHOWNORMAL)
      

  4.   

    为什么要用ShellExecute,没有复杂的需求有简单的干什么不用?而且楼上的回复牛头不对马嘴嘛..这帖讨论的重点不在这里
      

  5.   

    在使用ShellExecute或WinExec时,建议输入全路径。不要直接填个exe文件名就算了,这样会使你的程序不可靠,万一其它path路径中有一个重名文件,那你就挂了你可以先看看注册表中,应该记录的有solidworks的安装路径。良好的习惯,能够避免许多不必要的问题。