C# 搜索Office加载项

C# 搜索Office加载项,c#,registry,ms-office,add-in,C#,Registry,Ms Office,Add In,我希望创建一个实用程序,搜索Office加载项 我在我的注册表中找到了一些外接程序,所以我认为这是一个很好的开始,但我不能仅仅添加代码来查找我的外接程序,因为世界上还有数百个外接程序,我一直在努力寻找通过注册表进行搜索的方法,因此任何建议都将不胜感激 我发现: Office加载项位于HKEY\U LOCAL\U MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office中,因此我希望遍历该键,以返回清单位置、加载行为、描述等的值 我希望得到一些帮助,为我指明正确的

我希望创建一个实用程序,搜索Office加载项

我在我的注册表中找到了一些外接程序,所以我认为这是一个很好的开始,但我不能仅仅添加代码来查找我的外接程序,因为世界上还有数百个外接程序,我一直在努力寻找通过注册表进行搜索的方法,因此任何建议都将不胜感激

我发现:

Office加载项位于
HKEY\U LOCAL\U MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office
中,因此我希望遍历该键,以返回清单位置、加载行为、描述等的值

我希望得到一些帮助,为我指明正确的方向,如果我没有说清楚,请发表评论,我会很高兴地回答你的问题

using (RegistryKey ExcelLocation = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Wow6432Node\Microsoft\Office\Excel\Addins"))

        foreach (string subKeyName in ExcelLocation.GetSubKeyNames())
        {
            // Open the key.
            using (RegistryKey subKey = ExcelLocation.OpenSubKey(subKeyName))
            {
                // Write the value.
                Console.Writeline(subKey.GetValue("Description"));
                Console.Writeline(subKey.GetValue("FriendlyName"));
                Console.Writeline(subKey.GetValue("Manifest"));
            }
        }
这是我最接近于检索有关加载项的信息的地方,它检索我想从注册表中提取的信息


这是我最接近于检索有关加载项的信息的地方,它检索到我想从注册表中提取的信息。

IIRC在Microsoft Office的安装目录中曾经有一些子目录,也可以在其中部署加载项。也许您可以在注册表之外扫描该目录(甚至可以代替注册表)?您可以使用
registry.GetValue
RegistryKey.GetValue
方法检索注册表信息。看看MSDN:| IIRC在Microsoft Office的安装目录中曾经有一些子目录,也可以在其中部署外接程序。也许您可以在注册表之外扫描该目录(甚至可以代替注册表)?您可以使用
registry.GetValue
RegistryKey.GetValue
方法检索注册表信息。看看MSDN:|