以编程方式注册程序集

时间:2016-04-02 12:29:17

标签: c# com com-interop regasm dllregistration

我正在尝试注册一个dll,它以编程方式扩展我的上下文菜单。如果我使用命令行并调用regasm.exe一切正常 - 我的shell扩展在contextmenu中可见。如果我使用以下代码,则RegistrationServices.RegisterAssembly返回true,但在上下文菜单中看不到我的扩展名。我尝试了两种方式来接收下面显示的组件。他们没有工作。有什么建议吗?

string path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
RegistrationServices reg = new RegistrationServices();
Assembly assembly = typeof(ContextCopyPathExtension.ContextCopyPathExtension).Assembly;
//Assembly assembly = Assembly.LoadFrom(path  + "\\ContextCopyPathExtension.dll");
bool done = reg.RegisterAssembly(assembly, AssemblyRegistrationFlags.SetCodeBase);

0 个答案:

没有答案