5

InitialDirectoryのプロパティWindowsAPICodePack CommonOpenFileDialogマイ コンピューターの場所に設定したいのですが、同等のCLSIDまたはGUIDを使用して設定したか、それとも一体何なのか、マイ コンピューターを正しく設定するためのよりネイティブで安全な方法が存在するかどうかを知りたいだけです。場所、私はこれを試しましたが、うまくいきませんでした:

.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyComputer) 

これは私が使用しているコードです:

Dim FolderPicker As New Microsoft.WindowsAPICodePack.Dialogs.CommonOpenFileDialog

With FolderPicker

    .IsFolderPicker = True
    .Title = "Folder Dialog Test"
    .InitialDirectory = "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}" ' My Computer
    .DefaultFileName = "C:\"

End With

アップデート:

私はWindows 8 x64を使用しています。

ライブラリやデスクトップなどの他の特別なフォルダーは、次のように機能します。

.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) 
4

1 に答える 1

4

Environment.GetFolderPath は、実際には MyComputer のパスがないため、MyComputer のパスを返しません。

MSDN ドキュメントから:

My Computer フォルダーのパスが定義されていないため、MyComputer 定数は常に空の文字列 ("") を返します。

これは、あなたのソリューションが利用可能な最善のものであることを意味します (そして、あまり多くの人が気付いていない可能性があります)。今後の参考のために、利用可能な CLSID のリストへのリンクを次に示します。

于 2014-01-01T19:28:04.277 に答える