VBSのフォルダ選択でデスクトップを選択するとエラーになる

フォルダ選択ダイアログを表示する - VBScript Tips (Tips0124)」にあるサンプルは、デスクトップを選んだ際にエラーとなる。

原因はパスを取得する方法にあって、objFolder.Items.Item.PathはSpecialFolders プロパティに対応していないから。

対処としてHey, Scripting Guy! に紹介されている方法を用いる。

'正解:デスクトップやマイコンピュータを選択しても実際のフルパスに変換した値を返す
WScript.Echo objFolder.Self.Path

'間違い:デスクトップやマイコンピュータを選択した際にエラーとなる
WScript.Echo objFolder.Items.Item.Path

履歴

2010-09-07:正誤が逆になっていたので修正しました。