2008-12-16 94 views
1

我正在使用WinRAR SFX模塊創建安裝,並使用其預設選項運行一些初步測試。由於wscript只能接受vbs文件,而不是腳本本身,因此我首先運行「cmd/c echo {...腳本代碼...}> setup.vbs」,然後運行「wscript setup」。 VBS」。第一個cmd命令的運行會打開一個簡短的命令窗口,我真的很想避免這種情況。我想使用RunDll32來編寫這些數據,但找不到任何合適的API使用。如何在沒有命令提示符窗口的情況下創建文件

任何人都可以想到一種方法來繞過它,並創建一個小的VBScript文本小文件,而無需打開命令提示符窗口?

非常感謝,

splintor

回答

2

是在一個文件中的腳本代碼了嗎?如果是這樣,

可以使用TYPE命令腳本發送到文件:

TYPE [script_file] > setup.vbs 

或複製的腳本文件:

COPY [script_file] setup.vbs 

如果腳本代碼在體內您的cmd,您可以使用START命令在沒有窗口的情況下運行cmd/b標誌):

START /B cmd /c echo {...script code...} > setup.vbs 
+0

類型,複製和啓動都是cmd的內部命令,所以cmd必須先運行,這意味着命令提示符窗口將會顯示:( – splintor 2008-12-16 15:14:37

+0

你怎麼第一次運行「cmd/c echo {...腳本代碼。 ...}> setup.vbs「從你的標籤看起來好像你是通過命令行或者批處理腳本來做這件事的。 – 2008-12-16 17:08:18

1

而不是使用cmd /c echo {...script code...} > setup.vbs作爲預設步驟,也許你可以打包一個VBscript和你的安裝程序,進行初步測試並創建setup.vbs,然後爲你調用setup.vbs。你必須把它放在WinRAR腳本的設置部分。

您可以從VBScript中調用其他的VBScript這樣的:

Set WSHShell = CreateObject("WScript.Shell") 
WSHShell.Run "wscript d:\setup.vbs, ,True 

的運行命令的語法見this MSDN link

相關問題