VBscript | お手軽PW作成ツール(作った)

コマンドラインで動作するお手軽PW作成ツール
引数で数値を渡すとその桁数でランダムなパスワードを生成します。
メッセージボックスで表示するので、それをアクティブにしてCtrl+Cで中身を
コピーすることができます。

Option Explicit

'変数
dim strArg    '起動時の引数
dim strRnd    '1〜68のランダムな数値
dim strRndString '完成したランダムな文字列

	'引数が何も渡されなかった場合
	If WScript.Arguments.count = 0 Then
		msgbox "Error:引数がありません。" & vbCrLf & "生成するパスワードの桁数を決めてください。"
		WScript.Quit
	End If

	'引数が数値ではない場合
	If not IsNumeric(WScript.Arguments.Item(0)) Then
		msgbox "Error:引数が不正です。" & vbCrLf & "引数が数値ではありません。"
		WScript.Quit
	End If

'引数を取得
strArg = WScript.Arguments.Item(0)

'変数の初期化
strRnd = ""
strRndString = ""

dim i
	for i = 1 to WScript.Arguments.Item(0)
		Randomize
Select Case int((68 - 0 + 1) * Rnd + 0)
Case 0
strRnd = "0"
Case 1
strRnd = "1"
Case 2
strRnd = "2"
Case 3
strRnd = "3"
Case 4
strRnd = "4"
Case 5
strRnd = "5"
Case 6
strRnd = "6"
Case 7
strRnd = "7"
Case 8
strRnd = "8"
Case 9
strRnd = "9"
Case 10
strRnd = "A"
Case 11
strRnd = "B"
Case 12
strRnd = "C"
Case 13
strRnd = "D"
Case 14
strRnd = "E"
Case 15
strRnd = "F"
Case 16
strRnd = "G"
Case 17
strRnd = "H"
Case 18
strRnd = "I"
Case 19
strRnd = "J"
Case 20
strRnd = "K"
Case 21
strRnd = "L"
Case 22
strRnd = "M"
Case 23
strRnd = "N"
Case 24
strRnd = "O"
Case 25
strRnd = "P"
Case 26
strRnd = "Q"
Case 27
strRnd = "R"
Case 28
strRnd = "S"
Case 29
strRnd = "T"
Case 30
strRnd = "U"
Case 31
strRnd = "V"
Case 32
strRnd = "W"
Case 33
strRnd = "X"
Case 34
strRnd = "Y"
Case 35
strRnd = "Z"
Case 36
strRnd = "a"
Case 37
strRnd = "b"
Case 38
strRnd = "c"
Case 39
strRnd = "d"
Case 40
strRnd = "e"
Case 41
strRnd = "f"
Case 42
strRnd = "g"
Case 43
strRnd = "h"
Case 44
strRnd = "i"
Case 45
strRnd = "j"
Case 46
strRnd = "k"
Case 47
strRnd = "l"
Case 48
strRnd = "m"
Case 49
strRnd = "n"
Case 50
strRnd = "o"
Case 51
strRnd = "p"
Case 52
strRnd = "q"
Case 53
strRnd = "r"
Case 54
strRnd = "s"
Case 55
strRnd = "t"
Case 56
strRnd = "u"
Case 57
strRnd = "v"
Case 58
strRnd = "w"
Case 59
strRnd = "x"
Case 60
strRnd = "y"
Case 61
strRnd = "z"
Case 62
strRnd = "#"
Case 63
strRnd = "!"
Case 64
strRnd = "+"
Case 65
strRnd = "_"
Case 66
strRnd = "-"
Case 67
strRnd = "@"
Case 68
		End Select
	
	strRndString = strRndString & strRnd
next
msgbox strRndString