簡體   English   中英

是否可以從瀏覽器運行VBScript文件(.vbs)?

[英]Is it possible to run the VBScript file(.vbs) from the browser?

我有10個.vbs文件,並將它們合並到一個單獨的.vbs文件中,即Main.vbs。現在,如果我雙擊main.vbs,則我的腳本開始運行。 但是我一直在尋找可以從網絡瀏覽器運行.vbs文件的方法嗎? 這樣一來,無需再去Main.vbs所在的目錄並雙擊它。

我的Main.VBS內容:

Dim oShell : Set oShell = WScript.CreateObject ("WScript.Shell")
Dim FSO : Set FSO = CreateObject("Scripting.FileSystemObject")
oShell.CurrentDirectory = FSO.GetFile(Wscript.ScriptFullName).ParentFolder
oShell.run "A.VBS", 1, True
oShell.run "B.VBS", 1, True
oShell.run "C.VBS", 1, True
oShell.run "D.VBS", 1, True

是的,如果您使用Internet Exlorer可以,但是您必須將IE安全設置保持較低才能運行它,即使這樣,您也可能會提示您進行確認。 一切取決於Windows的版本和SP,安全性更新,IE的版本以及IE中的設置。

我建議再看看為什么您要以這種方式啟動本地腳本。 您可以輕松地制作和分發啟動腳本的快捷方式,而無需麻煩的設置和提示。

如果您需要一個可以使用Vbscript內置的用戶界面,或者可以使用.HTA文件而不是.html或.asp文件,則這些文件的安全性不再是問題。

示例:test.html

<script type="text/vbscript" src="c:\temp\test.vbs"></script>

和test.vbs

Const ForReading = 1, ForWriting = 2
Set fso = CreateObject("Scripting.FileSystemObject")
Set writefile = fso.OpenTextFile("c:\temp\output.txt", ForWriting, True)
writefile.write "test"
writefile.close

當我加載test.html時,我得到兩個提示,當我確認時,我在c:\\ temp中得到了output.txt。

最后一個帶有.hta文件的示例,將其保存為例如test.hta,在使用ActiveX或Vbscript時始終使用IE

<HTML>
<HEAD>
<SCRIPT language="VBScript">
<!--
Const ForReading = 1, ForWriting = 2
Set fso = CreateObject("Scripting.FileSystemObject")
Set writefile = fso.OpenTextFile("c:\temp\output.txt", ForWriting, True)
writefile.write "test"
writefile.close
'-->
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>

要么

<HTML>
<HEAD>
<script type="text/vbscript">
  sub test
    const runminimized = 7
    const dont_wait_for_end = false
    Set wshShell = CreateObject("WScript.Shell")
    WshShell.Run "c:\temp\test.vbs",runminimized, dont_wait_for_end
  end sub
</script>
</HEAD>
<BODY>
  these are the instructions
  <button onclick="vbscript:test" >Run the script</button>
</BODY>
</HTML>

您可以公開一個經典的ASP頁面,其中包含您的腳本文件,執行它們並將結果報告給瀏覽器。

IIS為Asp頁面提供服務(取決於您可能需要配置ASP設置的版本),並且可以從任何瀏覽器運行該頁面。

出於VBSlover的目的,最好的方法是對HTML應用程序進行編程(不需要Web服務器的額外復雜性,也沒有像普通客戶端.html腳本一樣的安全隱患)。 當然,僅將一些HTML代碼包裝在現有VBScript代碼周圍將是致命的,您將必須設計一個有用的GUI,並將現有功能分發到合適的事件處理程序中。 絕對不是一個可以通過在此處發布大量問題來解決的項目-自己進行一些認真的研究是必要的起點/前提條件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM