これは、コマンドラインから受け取ったパス名を 8.3形式に変えて、クリップボードにコピーするスクリプトです。 ただし、WSH標準では、クリップボードの 操作ができないようです。
 そこで、今回のスクリプトには、 "AutoItX"という、コンポーネントが必要です。  
    説明しておきますと、
  1. "http://www.hiddensoft.com/AutoIt/"から "AutoItX"というのをダウンロードします。
  2. "AutoItX.dll"を"C:\WINDOWS\SYSTEM" (NT系ではたぶん"SYSTEM32") にコピーします。
  3. "regsvr32 C:\WINDOWS\SYSTEM\AutoItX.dll"(9x系の場合)を 実行しレジストリに登録します。
 これで、まずコンポーネントのインストールが できました。
 次に、スクリプトを書きます。例えば、"C:\Script"に以下のような、 "SPathClp.vbs"を作ります。

******* SPathClp.vbs *******

'//////////////////////////////////////////////////////////
'//
'//     ファイル名を8.3形式にしてクリップボードにコピー
'//                                             by Shimizu


'ArgumentsObjectを使用
Set args = Wscript.Arguments
'ファイル、フォルダが渡されていなければ終了
if args.Count = 0 then
    res = MsgBox(_
        "ファイルまたは、フォルダが指定されていません",48)
        WScript.Quit
end if


'///  受け取ったパスを8.3形式に変換する
'ファイルシステムオブジェクトを使用
Set objFS = CreateObject("Scripting.FileSystemObject")

'パスがファイル
if objFS.FileExists(args.item(0)) then
    '受け取ったパスのFileオブジェクトを取得
    set objFile = objFS.GetFile(args.item(0))
    'ファイルパスを8.3形式に変換
    strShort = objFile.ShortPath

'パスがフォルダ
elseif objFS.FolderExists(args.item(0)) then
    '受け取ったパスのFoldreオブジェクトを取得
    set objFolder = objFS.GetFolder(args.item(0))
    'ファイルパスを8.3形式に変換
    strShort = objFolder.ShortPath

else
    res2 = MsgBox("該当するファイル、フォルダが有りません",48)
    WScript.Quit

end if


'AutoItXオブジェクトを使って8.3形式のパス名を
'クリップボードにコピー
Set obAutoIt = CreateObject("AutoItX.Control")
obAutoIt.ClipPut strShort


'結果を表示
kekka = MsgBox("""" & strShort & """を" & vbCR &_
    "クリップボードにコピーしました。",64,_
    "8.3形式パス名のコピー")


 今回も“Pyxis”でのランチャー設定を説明しておきますが、現在の WSHでは、エクスプローラのドラッグ&ドロップとかも使えます。

(下の例では、"SPathClp.vbs"は、"c:\Script"内にあります。)



 Pyxis(シェアウェア)の入手先は、 ベクター内または、 〜Tom〜さんのページにて



戻る