2011-10-23 79 views
2

我有一個啓動EXE(或甚至一個過程中沒有GUI)VB腳本:VBSCRIPT啓動一個進程

strCom = "Start calc" 
WSHShell.Run(strCom) 

它不會啓動該程序,當我打開任務管理器看不到它。
但是,當我直接在命令行中寫入命令「Start calc」時,它會打開它。

我該如何使用腳本來做到這一點?

回答

7

start被內置到cmd.exe;這不是一個實際的程序。

WSHShell.Run需要一個物理文件,而不是一個cmd內置。

因此,你可以寫WSHShell.Run("calc.exe")

+0

好的答案,但我只是想說明'WSHShell'需要先初始化。這是一個使用Internet Explorer的例子:'CreateObject(「WScript.Shell」)。Run(「iexplore」)' –

1

或者/另外 - 如果使用start是很重要的:

CreateObject("WScript.Shell").Run "%comspec% /c start /wait notepad.exe", 0, True 

CreateObject("WScript.Shell").Exec "%comspec% /c start E:\Handapparat\Algorithms\diktaat.pdf" 

RESP。其一些變化。

1
  1. 啓動系統的過程像CALC.EXE或cmd.exe的

    代碼

    Dim shl 
        Set shl = CreateObject("Wscript.Shell") 
        Call shl.Run("""calc.exe""") 
        Set shl = Nothing 
        WScript.Quit 
    
  2. 開始正常處理

    代碼

    Dim shl 
        Set shl = CreateObject("Wscript.Shell") 
        Call shl.Run("""D:\testvbs\someServices.exe""") 
        Set shl = Nothing  
        WScript.Quit 
    
  3. 你也能使用VBScript啓動任何批處理文件。 只是在調用它時在shl.run()中提供了批處理文件的路徑。