40得票8回答
如何在C#应用程序中使用Shell32?

为了让Shell32工作,我应该在C#应用程序中包含什么内容? 编辑: 我的应用程序无法识别shell32。我应该包含哪些引用或库?我想做的是:Shell32.Shell shell = new Shell32.Shell(); 我收到的错误信息: 错误1:未找到类型或命名空间名...

14得票4回答
Shell32.Folder.GetDetailsOf(..,..)有哪些选项?(注:此为一个提问标题,无需回答)

我看到一些使用GetDetailsOf()的答案来获取关于shell项目的详细信息,但数字总是神奇的数字。 我查看了FolderItem和GetDetailsOf文档,但没有发现有用的信息。(后者中的列表并不是所有内容。他们没有涵盖“描述”、“作者”,也没有回收站删除日期...) 是否有一...

10得票3回答
从Windows桌面获取所选文件列表

我正在尝试从Windows桌面和资源管理器窗口获取已选文件的列表。 要求是,我应该能够从活动的资源管理器窗口或桌面中检索当前选择的内容。 在查看了在线资源后,我成功编写了以下代码,但它无法提供来自桌面的已选项列表。ArrayList selected = new ArrayList(); v...

10得票4回答
从.NET Windows服务调用Shell32.dll

我有一个.NET 4.0库,使用Shell32和Folder.GetDetailsOf()从WTV文件中获取元数据。我已经在控制台和Windows Forms应用程序中成功使用过了。但是出现问题的是,在从.NET 4.0 Windows服务调用组件时,初始化Shell类的调用会导致COM错误。...

8得票2回答
如何通过编程将.lnk文件的目标更改?

有没有办法打开Windows快捷方式(.lnk文件)并更改其目标?我找到了下面的代码片段,它允许我找到当前的目标,但它是只读属性: Shell32::Shell^ shl = gcnew Shell32::Shell(); String^ shortcutPos = "C:\\some\\p...

7得票1回答
当通过Shell32读取公共快捷方式时,为什么会出现E_ACCESSDENIED错误?

我在一款C# 4应用程序中尝试读取所有桌面快捷方式的目标。Windows桌面上的快捷方式可以来自多个位置,具体取决于快捷方式是为所有用户还是仅为当前用户创建的。在这种特定情况下,我正在尝试从公共桌面读取快捷方式,例如从C:\Users\Public\Desktop\shortcut.lnk。 ...

7得票2回答
如何检查Shell32.Folder.CopyHere()何时完成

我需要使用Shell32在我的应用程序中解压缩和压缩一些文件。目前,我使用 srcFolder.CopyHere(destFolder.Items()) 来实现此操作。但是,我的下一行代码需要新创建的ZIP文件。但由于 CopyHere 方法是异步的,我该如何检查它何时完成?目前,我使用 Th...