home *** CD-ROM | disk | FTP | other *** search
/ Softwarová Záchrana 3 / Softwarova-zachrana-3.bin / pserv.cpl / pserv-2.4.exe / source / pserv.cpp < prev    next >
C/C++ Source or Header  |  2005-01-05  |  1KB  |  44 lines

  1. #include "precomp.h"
  2. #include "resource.h"
  3. #include "stdio.h"
  4. #include "stdlib.h"
  5. #include "stdarg.h"
  6.  
  7. extern "C" LONG APIENTRY CPlApplet( HWND hwndCPl, UINT uMsg, LONG lParam1, LONG lParam2 )
  8. {
  9.     if( uMsg == CPL_DBLCLK )
  10.     {
  11.         CHAR szDefaultPath[512] = "C:\\Program Files\\p-nand-q.com\\pserv.cpl";
  12.  
  13.         HKEY hkKey;
  14.         if( RegOpenKeyEx( HKEY_CURRENT_USER, "Software\\p-nand-q.com\\pserv.cpl", 0, KEY_READ, &hkKey ) == NO_ERROR )
  15.         {
  16.             DWORD dwSize = sizeof(szDefaultPath) / sizeof(CHAR), dwType;
  17.  
  18.             RegQueryValueEx( hkKey, "Install_Dir", 0, &dwType, (LPBYTE)szDefaultPath, &dwSize );
  19.             RegCloseKey(hkKey);
  20.         }
  21.         CHAR szDefaultFile[512];
  22.         sprintf( szDefaultFile, "%s\\pserv2.exe", szDefaultPath );
  23.         ShellExecute(hwndCPl, "open", szDefaultFile, "", szDefaultPath, SW_SHOW );
  24.     }
  25.     else if( uMsg == CPL_INQUIRE )
  26.     {
  27.         LPCPLINFO lpInfo = (LPCPLINFO) lParam2;
  28.         lpInfo->idIcon = IDI_ICON1;
  29.         lpInfo->idName = IDS_NAME;
  30.         lpInfo->idInfo = IDS_INFO;
  31.         lpInfo->lData = 0;
  32.     }
  33.     else if( uMsg == CPL_INIT )
  34.     {
  35.         return 1;
  36.     }
  37.     else if( uMsg == CPL_GETCOUNT )
  38.     {
  39.         return 1;
  40.     }
  41.     return 0;
  42. }
  43.  
  44.