vc 如何执行VBS脚本WinExec("Wscript.exe d:\\a.vbs",SW_SHOW);
这样写为什么不行呢

解决方案 »

  1.   

    应该用 cscript.exe  
      

  2.   

    可以的。Wscript和CScript都是vbs宿主。都行的。Cscript常用在命令行下
      

  3.   

    先看你的命令是否可以在cmd.exe中执行...可以调用cmd来执行
      

  4.   

    ShellExecute(NULL, _T("open"), _T("D:\\a.vbs"), NULL, 0, 0);
      

  5.   

    WinExec("Wscript.exe d:\\a.vbs",SW_SHOW);  这样运行后只有一个黑框一闪而过。脚本没运行,我脚本也很简单DIM objShell
    set objShell=wscript.createObject("wscript.shell")
    iReturn=objShell.Run("cmd.exe /C del a.vbs", 0, TRUE)脚本就是没运行,郁闷
      

  6.   

    楼主,你脚本里面写的是什么东西?WinExec和ShellExecute这两种方式都可以执行的,我试过。你检查一下你默认的脚步宿主是WScript.exe还是CScript.exe,
    这两个一个是基于窗口的,一个是基于控制台的。
      

  7.   

    呵呵,看到你的脚本了。这个跟程序没关系,程序时正确执行了。
    你只需要在最前面加一句测试就知道了。DIM objShell
    set objShell=wscript.createObject("wscript.shell")
    WScript.echo("Hello sjdev.")
    iReturn=objShell.Run("cmd.exe /C del a.vbs", 0, TRUE)
    至于为什么没执行,很明显了,Shell调出cmd.exe,执行del a.vbs时,没找到a.vbs。
    路径不对。