0

I have created a deskband for Windows XP after following the tutorial in codeproject. It works perfect. However, some of the users use Windows 7 and they found they cannot use the deskband I created. Could anyone let me know how to fix the problem?


Update: After the Windows 7 users installed the deskband (msi file), they cannot see it in the windows toolbars (right click mouse on taskbar > toolbars > ). The deskband is visible in the toolbar in the IE in Windows 7 though (The BandObject creates deskband for windows toolbar and for IE toolbar) .

Thanks!

KeithS
  • 70,210
  • 21
  • 112
  • 164
mabellez
  • 41
  • 2
  • 5
  • 5
    Some actual error messages or symptoms may be helpful. – Robert Gowland Apr 01 '11 at 15:30
  • 1
    You will need to provide more details to get any usable answer. – CodeNaked Apr 01 '11 at 15:38
  • It is generally not a good idea to write shell extensions in managed code (this might have changed a little with .NET 4 though). The reason is that only one version of the CLR can be loaded in at the same time. If you write your extension with .NET 2.0 and another extension uses .NET 1.1 and loads first then you are going to be in trouble. – Brian Lyttle Apr 01 '11 at 16:38
  • @BrianLyttle: It has changed in 4. You can run multiple versions of the CLR in the same process. –  Apr 01 '11 at 17:31

1 Answers1

2

Since Shell extensions are COM objects you should be able to find the GUID used to identify the object in the registry on machines where it works or in your project/build files. Make sure it is getting registered correctly on the Windows 7 machines by searching the registry or using something like the OLE-COM Object Viewer.

Run you MSI file with verbose logging to find out if there are installation problems. The deskband needs to be registered correctly and this could fail silently depending on how it is being registered.

As I said in my comment above, writing extensions in managed (.NET) code has historically been a problem. Some people can get away with it though.

Brian Lyttle
  • 14,558
  • 15
  • 68
  • 104
  • Thanks for answersing the question Brian. Since the deskband can be used successfully in IE's toolbar, can we say it's registered correctly? – mabellez Apr 01 '11 at 16:53
  • Perhaps. It is ages since I looked at this but there may be a change in Windows 7 that is impacting you. I say that because the Windows Media Player band is longer available but that may just be because it has designed for a fixed height. I'll see if I can dig anything up. – Brian Lyttle Apr 01 '11 at 17:08
  • I found http://msdn.microsoft.com/en-us/library/aa511446.aspx#deskbands, http://msdn.microsoft.com/en-us/magazine/dd942846.aspx, and http://msdn.microsoft.com/en-us/library/bb762067(v=vs.85).aspx. Are you able to manually register the deskband on W7? Sounds like you might want to confirm that works. Also check whether the user has Windows x64 or not as that may be an issue if the code is 32-bit. – Brian Lyttle Apr 01 '11 at 17:24
  • I'll try that tonight when I have chance to work on windows 7. Here at our location we only have windows XP. If I can mannully register the deskband's dll, what shall I do next? – mabellez Apr 01 '11 at 18:22
  • Start debugging the MSI. It must be a problem with how it is deployed. WiX (http://wix.sourceforge.net/) is a good tool for building MSIs if you need one. – Brian Lyttle Apr 02 '11 at 02:03