vbscript
  • syntax
  • wsh
  • 2009-08-18 49 views 5 likes 
    5

    有沒有用於驗證VBScript語法而不實際運行腳本的任何優秀實用程序?檢查VBScript語法

    什麼我得到的是,如果我這樣做:

    If (year == "2005" && type == 1) Then 
    ... 
    End If 
    

    是否有一個工具,它會告訴我,「& &」確實應該是「和」和「==」 ,只是'='?

    回答

    1

    其實,我覺得有一種方法將其轉換。腳本控件包含一個類似於HTML VBScript的Eval方法的Execute方法。你可以給它一個字符串,它會語法檢查它。

    ,您仍然可以從這裏得到它。 http://www.microsoft.com/downloads/details.aspx?FamilyID=d7e31492-2595-49e6-8c02-1426fec693ac&displaylang=en

    這個老MSDN文章介紹如何將腳本添加到您的應用程序。在腳本控制 http://msdn.microsoft.com/en-us/library/aa227633(VS.60).aspx

    像這樣的事情 http://msdn.microsoft.com/en-us/magazine/cc302278.aspx

    MSDN文章..(不知道該實例化)

    Dim ScriptControl1 as New MSScript 
    ScriptControl1.ExecuteStatement 「If (year == "2005" && type == 1) Then..End If」 
    
    +0

    我將不得不放棄一下。謝謝。 – 2009-09-25 18:41:26

    +1

    斷開連接..... – 2016-01-20 15:11:17

    0

    的Visual Studio(2005肯定)會做語法高亮和給你的智能感知已註冊的dll,這讓你非常接近驗證的語法。

    除此之外,它是一種解釋語言,所以就只有這麼多,你可以做。即使是最好的情況下也只能保證「它在我的機器上運行」狀態。

    0

    我不覺得孤單任何轉換器可用的不幸,但考慮到VBScript的語法是相當容易的,你也許可以很容易

    0

    我在尋找同樣的事情。如果你碰巧在asp的上下文中使用vbscript,那麼有一種叫做http://aspclassiccompiler.codeplex.com/的東西,它顯然將你的經典asp編譯成asp.net。

    因爲我相信這給某種編譯時錯誤的,我認爲語法錯誤會在編譯期間進行報告。儘管如此,還沒有嘗試過。

    7

    如果你不希望運行腳本,因爲你不希望它實際上做任何事情,然後我用一個方法是把一個「WScript.Quit」語句在腳本的開始(在Option Explicit之後,如果有的話),然後使用cscript.exe或wscript.exe運行它。

    例如:

    Option Explicit 
    WScript.Quit 
    Dim year 
    If (year == "2005" && type == 1) Then 
        WScript.Echo "Hello" 
    End If 
    

    這不會捕捉未定義的變量(如上面的「類型」),但它是一個簡單,快捷的方法來檢查你有正確的語法。

    相關問題