特殊フォルダーのパス名の取得
                                                         玄関へお回り下さい。
WshShellオブジェクト(Wscript.Shell)を使っての特殊フォルダーのパス名の取得  (125)
   Option Explicit   'SampleNo=125 WindowsXP VB6.0(SP5) 2002.03.29


Private Function fSpecialFolder() As String
'特殊フォルダーのパス名を取得
  On Error Resume Next
  Dim objWsh   As Object
  'オブジェクト変数 objWsh に Wscript.Shell への参照を設定します
  Set objWsh = CreateObject("Wscript.Shell")
  If Err Then
    MsgBox "エラー(Wscript.Shellが使用できません?)"
  Else
    '特殊フォルダーのパス名を取得
    fSpecialFolder = objWsh.SpecialFolders(List1.List(List1.ListIndex))
  End If
  Set objWsh = Nothing
End Function


Private Sub
Form_Load()
  List1.AddItem "AllUsersDesktop"
  List1.AddItem "AllUsersPrograms"
  List1.AddItem "AllUsersStartup"
  List1.AddItem "Desktop"
  List1.AddItem "Favorites"
  List1.AddItem "Fonts"
  List1.AddItem "MyDocuments"
  List1.AddItem "Programs"
  List1.AddItem "Recent"
  List1.AddItem "SendTo"
  List1.AddItem "StartMenu"
  List1.AddItem "Startup"
  List1.AddItem "Templates"
  List1.AddItem "AppData"
End Sub


Private Sub List1_Click()
  Text1.Text = fSpecialFolder
End Sub


結果
   special
  
Wscript.ShellはWIN98ならコントロールパネルのアプリケーションの追加と削除を起動して、
Windowsファイルのアクセサリの中にあるWindows スクリプティング ホストにチェックを入れてくだ
さい。 Win95でもIEが新しいと導入されているとか?このサンプルを動かして確認して下さい。
WshShellオブジェクトを使って結構色んな事が出来るようです。WEBで検索して調べて下さい。
http://www.hi-ho.ne.jp/tetsuzo/windows/wsh/index.htm  ここでも解説されておられます。    



2002/03/29