加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

.net – 在OpenFileDialog上设置“我的电脑”位置(WindowsAPICod

发布时间:2020-12-17 07:13:47 所属栏目:百科 来源:网络整理
导读:我想将 WindowsAPICodePack CommonOpenFileDialog的InitialDirectory属性设置为我的计算机位置,我是使用等效的CLSID或GUID做的,或者到底是什么,只是我想知道是否存在更原生/安全的方式来正确设置我的电脑位置,我试过这个,但没有奏效: .InitialDirectory = E
我想将 WindowsAPICodePack CommonOpenFileDialog的InitialDirectory属性设置为我的计算机位置,我是使用等效的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

UPDATE:

我在Windows 8 x64上.

其他特殊文件夹(如库和桌面)的工作方式如下:

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

解决方法

Environment.GetFolderPath永远不会返回MyComputer的路径,因为它实际上没有路径.

从MSDN documentation:

The MyComputer constant always yields the empty string (“”) because no
path is defined for the My Computer folder.

这意味着您的解决方案是最好的(并且可能是没有太多人知道??的解决方案).为了将来的兴趣,here is a link到可用的CLSID列表.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读