在文件夹中运行程序

本文关键字:程序 运行 文件夹 | 更新日期: 2023-09-27 18:31:29

我看到,当您将GUID分配给文件夹的名称时,例如:

GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}

现在,我想在访问具有指定 GUID 的文件夹时使用该系统打开 C# 程序。我查找了godmode键,并在注册表中找到了一个引用

HKEY_CLASSES_ROOT'CLSID'{key}

我在注册参考处找到了以下数据:

HKEY_CLASSES_ROOT'CLID'{key} : (Standard) REG_SZ = "AllTasks"
HKEY_CLASSES_ROOT'CLID'{key} : InfoTip REG_EXPAND_SZ = "@%SystemRoot%'system32'shell32.dll,-32538"
HKEY_CLASSES_ROOT'CLID'{key} : LocalizedString REG_EXPAND_SZ = "@%SystemRoot%'system32'shell.dll,-32537"
HKEY_CLASSES_ROOT'CLID'{key} : System.AppUserModel.ID REG_SZ = "Microsoft.Windows.ControlPanel"
HKEY_CLASSES_ROOT'CLID'{key}'DefaultIcon : (Standard) REG_EXPAND_SZ = "%SystemRoot%'System32'imageres.dll,-27"
HKEY_CLASSES_ROOT'CLID'{key}'InProcServer32 : (Standard) REG_EXPAND_SZ = "%SystemRoot%'System32'shell32.dll"
HKEY_CLASSES_ROOT'CLID'{key}'InProcServer32 : ThreadingModel REG_SZ = "Apartment"
HKEY_CLASSES_ROOT'CLID'{key}'ShellFolder : (Standard) REG_SZ = (no value)
HKEY_CLASSES_ROOT'CLID'{key}'ShellFolder : Attributes REG_DWORD = 0x20100004
HKEY_CLASSES_ROOT'CLID'{key}'ShellFolder : WanrsFORDISPLAY REG_SZ = ""

重要的部分是我希望程序或 shell 扩展在文件夹浏览器中运行,就像控制面板一样。

在文件夹中运行程序

这是通过创建 Shell 扩展来完成的,特别是通过创建文件夹视图来完成的。这个主题太宽泛了,无法在这里深入讨论如何从头到尾创建一个,但也许知道正确的术语并拥有这些链接至少可以帮助您入门。

请注意,如果要使用 .NET 编写 shell 扩展,

Microsoft仅正式支持使用 .NET 4.0 或更高版本编写 shell 扩展。这是因为 4.0 是支持进程内并行的版本。