昨天下載并且安裝了Updater Application Block后,需要執行一個Deploy.vbs的文件,鄙人才疏學淺,這個小問題竟然也花費了我不少心機。
現在把結論共享一下。
首先,我的vbs文件關聯已經被“豪杰”奪取了。我雙擊Deploy.vbs就會打開豪杰,比較郁悶。但是我用了打開方式,試了瀏覽器、cmd,都無濟于事。
今天,我想到這個問題后,就有想法去Microsoft的News Group上去問一問。然后又去了CSDN的全文檢索。果然很爭氣,我的關鍵字只是vbs,執行,就找到了一大堆我想要的東東。了解到用wscript.exe來執行這個文件。
在cmd里敲了wscript.exe Deploy.vbs,但是返回錯誤是 There is no script engine for file extension '.vbs'。這個時候我想到了google。果然搜到了不少有用的信息,其中第一條里我就找到了解決辦法。 原因是我的vbs關聯已經丟失了,必須顯示指定。
cmd中敲入 wscript.exe //e:vbscript Deploy.vbs。果然成功?。。?br />
總結:用wscript.exe 執行類似vbs這類的腳本文件。如果文件關聯丟失??梢杂?/e:vbscript.
附上我找到的很有幫助的文章。
一、什么是WSH?
WSH是Windows Scripting Host(Windows腳本主機)的縮略形式。WSH這個概念最早出現于Windows 98操作系統,是一個基于32 位 Windows 平臺、并獨立于語言的腳本運行環境。比如:你自己編寫了一個腳本文件,如后綴為 .vbs 或 .js 的文件,然后在 Windows 下雙擊 并執行它,這時,系統就會自動調用一個適當的程序來對它進行解釋并執行,而這個程序,就是 Windows Scripting Host,程序執行文件名為 Wscript.exe (若是在DOS命令提示符下,則為 Cscript.exe)。
想知道自己的機器上有沒有WSH嗎?查看一下你的機器里有沒有“Wscipt.exe”或者“Cscript.exe”這兩個文件就可以了。如果找到,恭 喜你!你已經安裝了WSH。否則,自己手動安裝吧:
在Windows 98環境下,WSH是作為操作系統的一個組件自動安裝的,如果不慎丟失了這個組件,可以從依次打開“控制面板-->添加/刪除程 序--〉Windows安裝程序--〉附件”,然后將“Windows Scripting Host”前的劃上“√”,再確定即可完成WSH組件的安裝。
二、腳本語言與WSH的關系
大家知道,腳本語言(包括JavaScript和VBscript語言等)經常會被植入網頁之中(其中包括 HTML 頁面客戶機端和 ASP 頁面服務器端) 。對于植入 HTML 頁面的腳本,其所需的解析引擎會由 IE 這樣的網頁瀏覽器載入;對于植入 ASP 頁面的腳本,其所需的解析引擎會由 IIS( Internet Information Services)提供。而對于出現在 HTML 和 ASP 頁面之外的腳本(它們常以獨立的文件形式存在),就需要經由 WSH 來 處理了。需要說明的是:WSH 要想正常工作,還要安裝IE 3.0 或更高版本的 IE,因為 WSH 在工作時會調用 IE 中的 VBScript 和 JavaScript 解析引擎。 [未結束][iduba_page]在這些被植于網頁的腳本語言中,絕大多數是與網絡安全無關的。但也有少數別有用心的好事 者,把一些嚴重危及網絡安全的代碼(我們常常稱之為“惡意代碼”,他們通常都要通過修改注冊表達到“惡意”的目的?。?,混放在正常的 腳本之中,常常讓我們防不勝防。但是,如果我們了解一點關于腳本語言的知識,這些“伎倆”都是非常容易識破的。還是讓我們從幾個簡單 的實例開始吧……
三、WSH應用舉例
WSH可以處理腳本程序,怎樣閱讀和編寫WSH的腳本源文件呢?只要你有一點Basic(會VB的編程更好,呵呵)語言的基礎,學會看懂WSH腳 本語言的程序并不是一件難事。去C:WINDOWSSAMPLESWSH目錄以下將看看吧!里面提供了幾類經典的腳本例子,而且分別提供了VBScript和 JavaScript兩個版本,我們只要用記事本打開它們并仔細研究就不難學到一些基本的WSH應用。
你只需在記事本中依次輸入以下每個實例中的代碼,并保存為相應的“*.vbs”文件,雙擊這個文件,你就可以看到相應的效果了。
Q: How do I open script files? Trying the above solution makes Windows XP throw an error?
A: This is similar to the *.js association problem. Some machines seem to, for some reason, lose their *.vbs association. It's not that the files open with dreamweaver or whatever -- it's that the machine just doesn't know how to run them. If you have a scheduled task, "Could not run" will appear in the status column.
So, you're a smart person and read through the FAQ. You find the *.js extension problem, and you try that fix: you run it as "wscript c:\path\to\script.vbs". But that, in turn, produces a pop-up error, this time a "Windows Scripting Host" error: "There is no script engine for file extension '.vbs'." So, for some reason, wscript doesn't even know what to do with *.vbs files.
The solution to this problem is to run the script as:
wscript //e:vbscript c:\path\to\script.vbs
The "//e:vbscript" tells wscript to use the vbscript engine to parse the script. It will then run correctly.
A few alternative solutions, perhaps easier are:
Rename it .vbe (VBScript Encoded Script File). Not sure if this is a bad idea, but it seemed to work for some scripts.
Make a new association for VBS. Open up my computer, select Tools menu-> Folder Options, and go to the File Types tab. There probably isn't a VBS association listed if you have this problem. Select New, type in VBS, and hit Advanced>>. Then, from the pull-down menu, select "VBScript Script File". Making this selection automatically takes care of the association, along with the //e:vbscript problem. This is probably the "correct" solution...
This problems usually occurs only on Windows XP machines, but the cause is not known. A Microsoft KB article on this issue can be found here. Thanks goes to Bob_2k for writing this FAQ entry.
利用wscript執行文件[包括可執行exe文件]vbs腳本
2020-07-02 10:48腳本之家 VBS
昨天下載并且安裝了Updater Application Block后,需要執行一個Deploy.vbs的文件,鄙人才疏學淺,這個小問題竟然也花費了我不少心機。
延伸 · 閱讀
- 2022-03-02將python項目打包成exe與安裝包的全過程
- 2022-03-01易語言生成exe文件的方法
- 2022-02-25Python打包exe文件一步步圖解明了簡單
- 2022-02-24一篇文章學會兩種將python打包成exe的方式
- 2022-02-24python用pyinstaller封裝exe雙擊后瘋狂閃退解決辦法
- 2022-02-23Python程序打包成可執行文件exe詳解流程
精彩推薦
- VBS
VBS教程:屬性-VolumeName 屬性
VBS教程:屬性-VolumeName 屬性...
- VBS
提供個可以顯示農歷的VBS代碼
本文主要分享一段可以顯示農歷的VBS代碼,具有一定的參考價值,有需要的朋友可以了解一下...
- VBS
腳本 MsAgent組件 微軟精靈 揪出系統自帶的寵物
你知道系統里有一個隱藏的寵物嗎? 將以下代碼保存為后綴為.vbs的文件,再雙擊運行,看看出來什么?一個可愛的魔法老人!還會說話、移動、吹喇叭…...
- VBS
VBS教程:正則表達式簡介 -建立正則表達式
建立正則表達式 構造正則表達式的方法和創建數學表達式的方法一樣。也就是用多種元字符與操作符將小的表達式結合在一起來創建更大的表達式。 可以...
- VBS
VBS教程:對象-Folders 集合
VBS教程:對象-Folders 集合...
- VBS
VBS教程:屬性-AvailableSpace 屬性
VBS教程:屬性-AvailableSpace 屬性 ...
- VBS
vbs base64 解密腳本代碼
解密base64的vbs小函數,支持英文與數字不支持中文。...
- VBS
可以定時自動關機的vbs腳本
這篇文章主要分享一段可以定時自動關機的vbs腳本代碼,有需要的童鞋可以學習下...