【问题标题】:Coordinates of Folders or Files in Windows ExplorerWindows 资源管理器中文件夹或文件的坐标
【发布时间】:2011-12-20 07:54:01
【问题描述】:

我的任务是开发一个模块,该模块需要我在 Windows 资源管理器中获取文件的坐标。

这是用例: 我的程序将 Windows 资源管理器打开到某个文件夹(例如,C:\FavoriteVideo)。用户对所有文件和文件夹进行整理。程序有一个触发器将文件和文件夹的所有坐标保存到数据结构中(可能是Hashtable)。我计划使用 Windows 服务来执行此操作。 (我熟悉 C#)。

如果您需要更多信息,请询问。

【问题讨论】:

  • Windows 服务无法运行。它不知道单个用户将他/她的桌面配置成什么样子。
  • 我一直在网上搜索,发现了如何创建最大化的 Windows 资源管理器窗口,但似乎没有任何东西可以获取文件/文件夹的坐标。
  • 嗨 Cody,我的想法是最大化 Windows 资源管理器窗口,然后捕获坐标。绝对坐标将帮助我为较小的窗口开发一些相对坐标距离(或者我希望如此):)
  • 重点不在于这是一项不可能完成的任务,而在于您无法使用 Windows 服务来完成。您将需要一个普通的用户模式应用程序。如果您想要在后台运行的东西,请不要创建/显示窗口。
  • 这样做的最终目的是什么?

标签: c# windows winapi


【解决方案1】:

[编辑:在注册表中找到新信息] 通过http://help.lockergnome.com/windows2/Desktop-Icons-Position--ftopict450729.html 的线程,我发现 Shell Bags 注册表项,例如 HKCU/Software/Microsoft/Windows/Shell/Bags/1/Desktop 似乎包含图标定位信息。希望这会有所帮助!

我听说 Windows NT 资源工具包带有 layout.dll,它公开了 shell 扩展函数来检索和更改用户的图标布局。也许这会奏效。我自己对此很好奇。

您也可以尝试查找这些程序中的任何一个是如何做到的,例如通过查看其中使用的符号:

http://www.howtogeek.com/howto/windows-vista/save-and-restore-desktop-icon-layout-in-windows-vista/

http://www.addictivetips.com/windows-tips/save-and-restore-the-position-of-desktop-icons-in-windows/

http://www.pchell.com/support/savedesktoplayout.shtml

【讨论】:

  • 谢谢!我会调查的 =)
  • 死链接,但它被评论称为 Shell Bags,自 2004 年以来就为人所知,Forensics 保留它,因为它甚至存储已删除文件中的数据。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-30
  • 2010-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多