【问题标题】:How to create a custom button in Windows Explorer toolbar如何在 Windows 资源管理器工具栏中创建自定义按钮
【发布时间】:2014-02-20 14:57:57
【问题描述】:

我想知道以编程方式将自定义按钮添加到 Windows 资源管理器栏的过程是什么? Windows 7 和 8 有什么不同?

是否可以在 C# 中实现?还是最好的方法是 C++?

谢谢!

【问题讨论】:

  • “自定义按钮”是什么意思? Windows 工具栏只是将“快捷方式”固定到程序/文件夹等...
  • Windows 资源管理器工具栏中的“后退”和“前进”按钮。像这样的东西:media.askvg.com/articles/images/…
  • 我没有答案,但我会告诉您,通常将 GUI 元素添加到 Windows 操作系统并不是一个简单的过程。您可能应该查看 WinAPI。您并没有真正指定要编写的程序的“目标”,或者它的目的,因此很难超越。关于哪种语言?我确信他们有能力完成这项任务。
  • 基本的想法是在工具栏上添加一个按钮来调用外部程序。我知道对于像删除这样的命令,使用注册表“很容易”。我更喜欢 C#,但也许 C++ 会更容易。

标签: c# c++ windows windows-explorer


【解决方案1】:

这些按钮是在 Windows 注册表中设置的,位于 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\GUID\TasksItemsSelectedHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\GUID\TasksNoItemsSelected

使用REG_SZ类型,数据是;分隔的shell命令名称列表。

我知道的文件夹GUIDs 是:

  • 5c4f28b5-f869-4e84-8e60-f11db97c5cc7 -> 通用
  • 5fa96407-7e77-483c-ac93-691d05850de8 -> 视频
  • 7d49d726-3c21-4f05-99aa-fdc2c9474656 -> 文档
  • 94d6ddcc-4a68-4175-a374-bd584a510b78 -> 音乐
  • b3690e58-e961-423b-b687-386ebfd83239 -> 图片
  • 5f4eab9a-6833-4f61-899d-31cf46979d49 -> 其他库

您可以从注册表项中选择的任务: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell

您可以使用command 子键将普通可执行文件添加到此列表中,并将exe 命令放在数据字段中。看看周围的例子。

狩猎愉快。

【讨论】:

  • 谢谢。无法添加执行自定义应用程序的按钮?
  • 是的,这是可能的。您需要将“命令”添加到 shell 命令库。你最终会得到一个像.../CommandStore/shell/MyCommand/command 这样的键,其类型为REG_SZ,值为C:\ProgramFiles\MyWonderApp\Wonder.exe
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-09
  • 2019-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多