VBS變數名Wsh等於WScript物件?

2022-09-21 08:48:12 字數 1338 閱讀 1640

複製** **如下:

set wsh = createobject("wscript.shell")

wscript.sleep 15 * 60 * 1000

wsh.run "shutdown /s /t 0"

雙擊執行,居然彈出個錯誤對話方塊

複製** **如下:

line: 1

char:

error: wrong number of arguments or invalid prope assignment: 『wsh'

code: 800a01c2

source: microsoft vbscript runtime error

習慣了用vbsedit寫指令碼,難道沒有vbsedit我就寫不對vbs指令碼了?乙個字乙個字地檢查了一遍,沒發現任何語法錯誤,但是雙擊就是報錯,真是見鬼了!

傳說宣告變數是個良好的程式設計習慣,於是改成

複製** **如下:

dim wsh

set wsh = createobject("wscript.shell")

wscript.sleep 15 * 60 * 1000

wsh.run "shutdown /s /t 0"

這次居然不報錯了!怎麼可能!vbs不是可以不宣告變數的麼!平時寫的程式不都好好的麼!

想了一下,發現平時用vbsedit的時候變數名都是用編輯器自帶snippets中的wshshell,莫非是變數名的問題?

複製** **如下:

'dim wshshell

set wshshell = createobject("wscript.shell")

wscript.sleep 15 * 60 * 1000

wshshell.run "shutdown /s /t 0"

這樣也沒有任何問題,看來是wsh這個變數名惹的禍。為什麼不能用這個變數名呢?唯一的解釋就是它是vbs內建的變數,而wscript也是vbs的內建變數,難道wsh是wscript的別名?

wsh.echo "hello world"

msgbox wsh.scriptfullname測試結果和wscript一樣,怎麼會有這麼**的東西!我沒有在哪本書上看到過,參考手冊上也沒有任何說明。

總結一下:

1、wsh是wscript的別名

2、dim可以消除vbs內建變數

3、不要以為自己的vbs水平很高

原文:程式設計客棧ing程式設計客棧/vbs-wsh-wscript.html

本文標題: vbs變數名wsh等於wscript物件?

本文位址: /ruanjian/vb/84610.html

變數名命名

有些東西不明確寫出來就難以確定下來,個人寫 的命名風格一直沒有穩定下來,今天寫個筆記明確幾類主要的命名,希望可以逐步養成自己的程式設計風格。1.類名 型別名 t 每個單詞首字母大寫 例 t typename 2.列舉型別 反應型別的複數形式 例 enum colors 3.函式名 每個單詞首字母大寫...

變數名提公升

預解析的過程 的執行過程 程式在執行過程,會先將 讀取到記憶體中檢查,會將所有的宣告在此時進行標記。所謂的標記就是讓js直譯器直到有這個名字,後面在使用名字的時候,不會出現未定義的錯誤,這個標記就是提公升 宣告 名字的宣告,識別符號的宣告 變數名的提公升 函式的宣告 函式宣告與函式表示式有區別,函式...

Oracle中的替換變數, 變數名, 變數名

替換變數 僅用於sql plus或者用於原理和sql plus相同的開發工具 臨時儲存值 利用它可以達到建立通用指令碼的目的 利用它可以達到和使用者互動,故在sql plus中又稱互動式命令 替換變數的格式式在變數名稱前加乙個 以便在執行sql命令時提示使用者輸入替換資料,然後按輸入資料執行sql命...