RSS

Shell extension and ATL development

14 Apr

  1. An absolutely must-read paper is here.
  2. To install the ATL dll to the target machine: Regsvr32 /s Your.dll
  3. To get the shell extension to work in x64 mode, use VS2005 or VS2008 ATL wizard, as VC6 does not support to change the x86 or x64 platforms;
  4. In VS2008 wizard, some interface’s signigures are different from that in VC6 enviromment, for instance, in VC6, for the IContextMenu inteface , the function to be implemented is:
    STDMETHODIMP GetCommandString(UINT, UINT, UINT*, LPSTR, UINT);
    and in ATL 9.0, however it is:
    STDMETHODIMP GetCommandString(UINT_PTR, UINT, UINT*, LPSTR, UINT);
  5. To generate the DLL for x64 machines, in VS2008, go to Project->Properties (or Alt+F7), then Configuration Properties-> Linker -> Advanced, on the right side, go to “Target Machine”, change this to “MachineX64 (/MACHINE:X64) and Rebuild.
  6. The transparency of the icon in the shortcut menu can be found here.
Advertisements
 
Leave a comment

Posted by on April 14, 2009 in MFC

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: