I have searched a lot on here on SOF as well as on MSDN forums but unfortuntely no method could work for me. Here is the problem and the methods applied.
- I developed a toolbar using .Net for Internet Explorer 7. It is registered as BHO (browser Helper Object" using C# installer code that follows.
- I am using MSI setup and custom install class file to register the BHO. Here is how i am doing it.
- I have signed both the dll, generated and signed both the MSI and the EXE for the MSI. After installation i verify in c:\Program Files\My Test Extension\ that my extension has digital signature as well.
Problem:
The problem is: When i goto "Managed Addons" in Internet Explorer 7 Options, i see my extension/toolbar under "Not Available" instead of company name as set in Extension/assembly properties. The "Publisher" is not available when i click "more information".
Please tell how can i set "Publisher Information"? I am using key and valid certificate issued by Verisign Inc,.
Please tell if i am doing something wrong or missing something. Here is my installer/registration code.
string name = t.Name;
string help = t.Name;
rkClass.SetValue(null, name);
rkClass.SetValue("MenuText", name);
rkClass.SetValue("HelpText", help);
rkLMClass.SetValue(null, name);
rkLMClass.SetValue("MenuText", name);
rkLMClass.SetValue("HelpText", help);
rkInprocServer32.SetValue(null, "mscoree.dll");
rkInprocServer32.SetValue("ThreadingModel", "Both");
rkInprocServer32.SetValue("Class", t.FullName);
rkInprocServer32.SetValue("Assembly", "MyTestExtension, Version=1.0.0.0");
rkInprocServer32.SetValue("RuntimeVersion", "v2.0.50727");
rkLMInprocServer32.SetValue(null, "mscoree.dll");
rkLMInprocServer32.SetValue("ThreadingModel", "Both");
rkLMInprocServer32.SetValue("Class", t.FullName);
rkLMInprocServer32.SetValue("Assembly", "MyTestExtension, Version=1.0.0.0");
rkLMInprocServer32.SetValue("RuntimeVersion", "v2.0.50727");
if (0 != (style & BandObjectStyle.Vertical))
{
rkCat.CreateSubKey("{00021493-0000-0000-C000-000000000046}");
rkLMCat.CreateSubKey("{00021493-0000-0000-C000-000000000046}");
}
if (0 != (style & BandObjectStyle.Horizontal))
{
rkCat.CreateSubKey("{00021494-0000-0000-C000-000000000046}");
rkLMCat.CreateSubKey("{00021494-0000-0000-C000-000000000046}");
}
if (0 != (style & BandObjectStyle.TaskbarToolBar))
{
rkCat.CreateSubKey("{00021492-0000-0000-C000-000000000046}");
rkLMCat.CreateSubKey("{00021492-0000-0000-C000-000000000046}");
}
if (0 != (style & BandObjectStyle.ExplorerToolbar))
Registry.LocalMachine.CreateSubKey(@"SOFTWARE\Microsoft\Internet Explorer\Toolbar").SetValue(guid, name);
// register as BHO
RegistryKey bhoKey = Registry.LocalMachine.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\" + guid);
bhoKey.SetValue("NoExplorer", 1, RegistryValueKind.DWord);
Your help is very much appreciated.
Thanks
Steve