Jeff Walsh

I have successfully create a band object using the code here:
http://www.codeproject.com/csharp/dotnetbandobjects.asp select=1113574&df=100&forumid=3788&noise=1&mpp=50&fr=51#xx1024015xx

The problem is that when I log off while the band object is displayed in the task bar, both the new band object and my Quick Launch toolbar will no long be visible after logging back in. In addition, the order of icons in the Quick Launch toolbar gets reset back to their original state which is very annoying.

I have tried various suggestions including the following registry additions:

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoToolbarCustomize"=dword:00000000
"NoBandCustomize"=dword:00000000

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoToolbarsOnTaskbar"=dword:00000000

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoActiveDesktop"=dword:00000000

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"ClassicShell"=dword:00000000

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoSaveSettings"=dword:00000000

Any ideas would be greatly appreciated.



Re: Internet Explorer Extension Development After installing a band object, the Quick Launch toolbar disappears after logging out

IECUSTOMIZER

Hi Jeff,

Group Policy also can apply to the HKCU root. Do you have the same settings under the HKCU root

Regards.






Re: Internet Explorer Extension Development After installing a band object, the Quick Launch toolbar disappears after logging out

Jeff Walsh

Yes, I also the same settings to HKCU but got the same results. If the band object is visible when logging off, no toolbars are displayed after logging back in.

Here are my latest registry mods:

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoToolbarCustomize"=dword:00000000
"NoBandCustomize"=dword:00000000
"NoToolbarsOnTaskbar"=dword:00000000
"NoSaveSettings"=dword:00000000
"NoActiveDesktop"=dword:00000000
"ClassicShell"=dword:00000000

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoToolbarCustomize"=dword:00000000
"NoBandCustomize"=dword:00000000
"NoToolbarsOnTaskbar"=dword:00000000
"NoSaveSettings"=dword:00000000
"NoActiveDesktop"=dword:00000000
"ClassicShell"=dword:00000000





Re: Internet Explorer Extension Development After installing a band object, the Quick Launch toolbar disappears after logging out

IECUSTOMIZER

Hi Jeff,

Can you post your CLSID values from the registry,

What ImplementedCategories values are you using

Regards.






Re: Internet Explorer Extension Development After installing a band object, the Quick Launch toolbar disappears after logging out

Jeff Walsh

Rob, here are the CLSID values from the registry:

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}]
@="FogBugz Toolbar"
"HelpText"="Search FogBugz."
"MenuText"="FogBugz Toolbar"

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\Implemented Categories]

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\Implemented Categories\{00021492-0000-0000-C000-000000000046}]

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\Implemented Categories\{00021494-0000-0000-C000-000000000046}]

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\Implemented Categories\{62C8FE65-4EBB-45E7-B440-6E39B2CDBF29}]

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\InprocServer32]
@="mscoree.dll"
"RuntimeVersion"="v2.0.50727"
"CodeBase"="file:///C:/Program Files/MT/FogBugz Toolbar/SampleBars.dll"
"Class"="SampleBars.HelloWorldBar"
"ThreadingModel"="Both"
"Assembly"="SampleBars, Version=1.0.0.0, Culture=neutral, PublicKeyToken=986bc4a6884ee38f"

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\InprocServer32\1.0.0.0]
"RuntimeVersion"="v2.0.50727"
"Assembly"="SampleBars, Version=1.0.0.0, Culture=neutral, PublicKeyToken=986bc4a6884ee38f"
"Class"="SampleBars.HelloWorldBar"
"CodeBase"="file:///C:/Program Files/MT/FogBugz Toolbar/SampleBars.dll"

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\ProgId]
@="SampleBars.HelloWorldBar"





Re: Internet Explorer Extension Development After installing a band object, the Quick Launch toolbar disappears after logging out

IECUSTOMIZER

HI Jeff,

My desktop box is off the air at the moment, so I don't have access to the sample C# toolbars, but I am pretty sure that I can see the answer.

mscoree.dll s/b mscoreie.dll (the actual file should be in your debug folder and is copied to your system32 folder during installation, check for the correct file name)

I think also that you should also remove the last implemented Categories entry to

{62C*FE.....etc - A quick launch bar implementation - You already have the task bar implemented category, your toolbar should appear in the Toolbar list of the Task bar's context menu.

I have tried that trick with the Google Toolbar (and others). If you are using a satellite BHO to hook into the browser, it will not work in the Task Bar. Be sure to test also for persistance.... Select the toolbar to be displayed on the Task Bar.... Reboot your machine.... I think that when you reboot the toolbar will not be displayed on the TaskBar because there is no running instance of IE.

I will post back the registry entries for the sample C# toolbars once my other box is up and going.

Regards.






Re: Internet Explorer Extension Development After installing a band object, the Quick Launch toolbar disappears after logging out

Jeff Walsh

Hi Rob,

I deleted all entries for Implemented Categories except the task bar, but the behavior after logging off and back on has not changed. This should take IE out of the picture, correct

Now my registry looks like this:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}]
@="FogBugz Toolbar"
"HelpText"="Search FogBugz"
"MenuText"="FogBugz Toolbar"

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\Implemented Categories]

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\Implemented Categories\{00021492-0000-0000-C000-000000000046}]

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\InprocServer32]
@="mscoree.dll"
"Class"="SampleBars.HelloWorldBar"
"ThreadingModel"="Both"
"RuntimeVersion"="v2.0.50727"
"CodeBase"="file:///C:/Program Files/MT/FogBugz Toolbar/SampleBars.dll"
"Assembly"="SampleBars, Version=1.0.0.0, Culture=neutral, PublicKeyToken=986bc4a6884ee38f"

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\InprocServer32\1.0.0.0]
"Class"="SampleBars.HelloWorldBar"
"CodeBase"="file:///C:/Program Files/MT/FogBugz Toolbar/SampleBars.dll"
"RuntimeVersion"="v2.0.50727"
"Assembly"="SampleBars, Version=1.0.0.0, Culture=neutral, PublicKeyToken=986bc4a6884ee38f"

[HKEY_CLASSES_ROOT\CLSID\{FED67D62-CFDD-4047-8A02-73CC7DA63889}\ProgId]
@="SampleBars.HelloWorldBar"

I could not find mscoreie.dll in my windows folder.





Re: Internet Explorer Extension Development After installing a band object, the Quick Launch toolbar disappears after logging out

IECUSTOMIZER

Hi Jeff,

mscoreie.dll sould be found in the install folder for you Addon. I am pretty sure that it is mscoreie.dll and not mscoree.dll.

Think what is going on here.... mscoreie.dll is a wrapper produced by the C# compiler to reference shdocvw.dll.

Always use an intaller to install your addon, always use the uninstaller to remove your addon before re-installing.

If you can at this stage, I would try to get another machine to test with or if you are using Virtual Images, create a new disk image, and start from scratch once you have scruinised your installer.

Regards.






Re: Internet Explorer Extension Development After installing a band object, the Quick Launch toolbar disappears after logging out

Jeff Walsh

Bob,

I have Interop.SHDocVw.dll which I believe is the wrapper you are referring to.

I'm not sure this is a missing DLL problem since the toolbar displays and works fine. It's this odd behavior of corrupting the quicklaunch toolbar that is problematic.

If I hide my custom toolbar and then log out, quicklaunch remains visible and uncorrupted.

As far as registration, my installer does this:

RegistrationServices regsrv = new RegistrationServices();

regsrv.RegisterAssembly(this.GetType().Assembly, AssemblyRegistrationFlags.SetCodeBase)

...

//Here is the registration method

[ComRegisterFunctionAttribute]

public static void Register(Type t)

{

string guid = t.GUID.ToString("B");

RegistryKey rkClass = Registry.ClassesRoot.CreateSubKey(@"CLSID\"+guid );

RegistryKey rkCat = rkClass.CreateSubKey("Implemented Categories");

BandObjectAttribute[] boa = (BandObjectAttribute[])t.GetCustomAttributes(

typeof(BandObjectAttribute),

false );

string name = t.Name;

string help = t.Name;

BandObjectStyle style = 0;

if( boa.Length == 1 )

{

if( boa[0].Name != null )

name = boa[0].Name;

if( boa[0].HelpText != null )

help = boa[0].HelpText;

style = boa[0].Style;

}

rkClass.SetValue(null, name );

rkClass.SetValue("MenuText", name );

rkClass.SetValue("HelpText", help );

if( 0 != (style & BandObjectStyle.Vertical) )

rkCat.CreateSubKey("{00021493-0000-0000-C000-000000000046}");

if( 0 != (style & BandObjectStyle.Horizontal) )

rkCat.CreateSubKey("{00021494-0000-0000-C000-000000000046}");

if( 0 != (style & BandObjectStyle.TaskbarToolBar) )

rkCat.CreateSubKey("{00021492-0000-0000-C000-000000000046}");

if( 0 != (style & BandObjectStyle.ExplorerToolbar) )

Registry.LocalMachine.CreateSubKey(@"SOFTWARE\Microsoft\Internet Explorer\Toolbar").SetValue(guid,name);

}

I am using a VirtualMachine for testing, so I sure the system is clean when I start.

Jeff