位元詩人 [VBScript] 程式設計教學:建置開發環境

Facebook Twitter LinkedIn LINE Skype EverNote GMail Yahoo Email

前言

本文將說明如何建置撰寫 VBScript 命令稿的開發環境。

直譯器

VBScript 在 Windows 系統中為內建元件,不需要額外安裝任何軟體。其直譯器分為兩種:WScriptCScript。前者會啟動圖形介面,後者則在命令列中執行。

若未特別指定,系統預設會使用 WScript 執行命令稿。一般情況下不建議更改此預設值,因為透過滑鼠雙擊 VBScript 時,會預期程式以圖形介面方式呈現。

編輯器

VBScript 多半用於撰寫簡短的命令稿,通常不需要使用完整的 IDE。使用像是 VSCode 這類的文字編輯器即可滿足需求。

撰寫第一隻程式

在程式設計中,Hello World 通常作為熟悉開發環境的入門範例。以下是 VBScript 版本的 Hello World:

WScript.Echo "Hello World"

在多數情況下,VBScript 並不區分大小寫。不過從程式碼可讀性的角度來看,通常會將指令採用首字母大寫的寫法,而不是全部大寫,以利日後維護與辨識。

在預設情況下,不論是雙擊命令稿或透過命令列執行,皆會使用 wscript 開啟 VBScript 命令稿。以本例來說,會顯示如下對話框:

Hello World in VBScript

若使用 CScript,則可以改由終端機執行 VBScript 命令稿:

> cscript path\to\hello.vbs
Microsoft (R) Windows Script Host Version 10.0
Copyright (C) Microsoft Corp. 1996-2006, 著作權所有,並保留一切權利

Hello World

為 VBScript 撰寫 Wrapper

由於 VBScript 預設會使用 WScript 執行命令稿,但在某些情境下,我們可能希望改以 CScript 在命令列環境中執行。此時可以透過一個簡單的 Batch 命令稿來包裝(wrapper)VBScript:

@echo off

rem Set your script name here
set program=hello.vbs

set cwd=%~dp0

if not exist "%cwd%%program%" (
    echo "No script on the system: " . "%program%" >&2
    exit /b 1
)

cscript /nologo "%cwd%%program%" %*

將此命令稿與 VBScript 檔案放在同一個目錄下即可使用。呼叫方式如下:

> .\hello.bat

透過這種方式,可以確保 VBScript 命令稿是在終端機環境中執行。

關於作者

位元詩人 (ByteBard) 是資訊領域碩士,喜歡用開源技術來解決各式各樣的問題。這類技術跨平台、重用性高、技術生命長。

除了開源技術以外,位元詩人喜歡日本料理和黑咖啡,會一些日文,有時會自助旅行。