如何在我的应用程序中打开类似于文档
,图片
,音乐
,视频
和所有其他自定义库的Windows 7库?
我尝试打开explorer.exe Libraries\Documents
但是它不起作用。
查找AppData目录:
Dim appData As String = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
找到文件快捷方式并在资源管理器中打开:
For Each file As String In Directory.GetFiles(appData, "Documents.library-ms", SearchOption.AllDirectories)
Process.Start(file)
Next
ShellLibrary
对象分配给Microsoft.WindowsAPICodePack.Dialogs.CommonFileDialog
(例如Microsoft.WindowsAPICodePack.Dialogs.CommonOpenFileDialog
)的DefaultDirectoryShellContainer
属性。库存储在 C:\Users\USERNAME\AppData\Roaming\Microsoft\Windows\Libraries
并具有扩展名为 .library-ms
,因此 Documents
将是 Documents.library-ms
Windows API Code Pack 提供了与 Windows 7 库进行交互的托管 API。我认为它可能会有所帮助。
Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
将MyDocuments替换为您需要的任何文件夹,在枚举中查看有哪些文件夹。
这与LostInLib的帖子下的评论有关,因为解释太长无法作为评论。
您需要理解库和文档文件夹之间的区别,因为它们不是同一件事。 C:\ Users \ USERNAME \ Documents是默认文档文件夹C:\ Users \ USERNAME \ AppData \ Roaming \ Microsoft \ Windows \ Libraries \ Documents.library-ms是名为Documents的库,该库是您添加到其中的所有位置的索引,它不必链接到C:\ Users \ USERNAME \ Documents ,例如在我的网络上,我将其设置为\ server \ users \ USERNAME,因此当用户转到开始菜单上的文档库时,他们将重定向到服务器共享。 您还可以在一个库中拥有多个位置,因此我可以在那里将我的docs LOCAL和我的服务器my docs放在一起,因此当我进入my docs库时,它会显示两个文件夹,看起来像是在同一个my docs文件夹中。
假设我的文档在这里不好,因为它不一定是 C:\Users\USERNAME\Documents,同样的,库也不一定在这里 C:\Users\USERNAME\AppData\Roaming\Microsoft\Windows\Libraries\Documents.library-ms 如果你重定向了你的 appdata 文件夹,例如在网络上,你的库也可以在这里: \server\users\USERNAME\AppData\Roaming\Microsoft\Windows\Libraries\Documents.library-ms