home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 February / Chip_2002-02_cd1.bin / sharewar / apaths / APSOURCE.ZIP / DllMain.c < prev    next >
C/C++ Source or Header  |  2001-03-26  |  2KB  |  70 lines

  1. /* DllMain.c - March 26th, 2001
  2. **
  3. **      Copyright (c) 1997-2001 by Gregory Braun. All rights reserved.
  4. **
  5. **      This function forms the main DLL entry point for an MS Windows 95/NT
  6. **      Dynamically Linked Library (DLL) module.
  7. **
  8. **      Called:     instance = library instance.
  9. **                  type     = command type.
  10. **                  reserved = a pointer to a reserved memory block.
  11. **
  12. **      Returns:    TRUE upon success, or FALSE if an error exists.
  13. */
  14.  
  15. #include "AppPaths.h"
  16.  
  17. HINSTANCE far       applet;
  18. BOOL far            user;
  19.  
  20. char far            program[PSTRING];
  21. char far            helpfile[PSTRING];
  22.  
  23.  
  24.  
  25. static void         attach          (HINSTANCE instance);
  26.  
  27. BOOL WINAPI DllMain (HINSTANCE instance,ULONG type,LPVOID reserved)
  28. {
  29.     UNUSED_ARG (reserved);
  30.  
  31.     switch (type) {
  32.  
  33.         case DLL_PROCESS_ATTACH :
  34.              attach (instance);
  35.              break;
  36.  
  37.         case DLL_THREAD_ATTACH :
  38.              break;
  39.  
  40.         case DLL_PROCESS_DETACH :
  41.              break;
  42.  
  43.         case DLL_THREAD_DETACH :
  44.              break;
  45.              }
  46.  
  47.     return (TRUE);
  48. }
  49.  
  50. static void attach (HINSTANCE instance)
  51. {
  52.     auto LPSTR  p;
  53.  
  54.     if (GetModuleFileName (applet = instance,program,PSTRING)) {
  55.  
  56.         lstrcpy (helpfile,program);
  57.  
  58.         if ((p = lstrrchr (helpfile,EXT_CHR)) != NULL)
  59.             lstrcpy (p,HLP_EXT);
  60.         else
  61.             *helpfile = EOS;
  62.         }
  63.  
  64.     InitCommonControls ();
  65.  
  66.     return;
  67. }
  68.  
  69. /* end of DllMain.c - written by Gregory Braun */
  70.