home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / winui / shell / fparser / vsdtop.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-02-03  |  2.6 KB  |  118 lines

  1. #ifdef WIN32
  2. #define WINDOWS
  3. #endif
  4.  
  5. #ifdef _WINDOWS /* MS C 7.0 predefined */
  6. #ifndef WIN32
  7. #define WINDOWS
  8. #define WIN16
  9. #endif
  10. #endif
  11.  
  12. #ifdef WINDOWS
  13. #pragma message("Windows")
  14. #endif
  15.  
  16. #ifdef WIN16
  17. #pragma message("Win16")
  18. #endif
  19.  
  20. #ifdef WIN32
  21. #pragma message("Win32")
  22. #endif
  23.  
  24.     /*
  25.     |     Include windows and scc definitions
  26.     */
  27.  
  28. #include "entry.h"
  29. #include <stdlib.h>
  30. #include <windows.h>
  31.  
  32. typedef signed char  *    LPCHAR;
  33. typedef signed short  *    LPSHORT;
  34.  
  35. typedef DWORD HIOFILE;
  36.  
  37. /*
  38. |
  39. |   Typedef for FI information and get structure
  40. |
  41. */
  42.  
  43. typedef struct FIINFOtag
  44.    {
  45.    WORD      fiId;            /* FI Id */
  46.    WORD      fiFlags;            /* flags for the Id */
  47.    BYTE      fiName[26];        /* name of the Id, for example "WordPerfect 5.0" */
  48.    } FIINFO;
  49.  
  50. typedef struct FIGETSTRUCTtag
  51.    {
  52.    HANDLE   gsRes;
  53.    WORD     gsIndex;
  54.    } FIGETSTRUCT;
  55.  
  56.  
  57.  
  58. __declspec(dllexport) WORD __cdecl FIIdFile(DWORD,LPSTR,DWORD,WORD  *);
  59. __declspec(dllexport) WORD __cdecl FIIdHandle(HIOFILE,WORD  *);
  60. __declspec(dllexport) void __cdecl FIGetFirstId(FIGETSTRUCT  *, FIINFO  *);
  61. __declspec(dllexport) void __cdecl FIGetNextId(FIGETSTRUCT  *, FIINFO  *);
  62.  
  63.  
  64.  
  65. #include "sodefs.h"
  66.  
  67.  
  68.  
  69.  
  70. typedef void  * HPROC;
  71.  
  72. typedef struct fdesc
  73.     {
  74.     SHORT     FilterId;
  75.     CHAR     FilterType;
  76.     CHAR     FileDescription[40];
  77.     } FILTER_DESC;
  78.  
  79. typedef struct VWINFOtag
  80.     {
  81.     DWORD     VwCheck;
  82.     WORD     VwSaveSize;
  83.     WORD     VwDynamicSize;
  84.     WORD     VwStaticSize;
  85.     WORD     VwSpecLevel;
  86.     WORD     VwFilterLevel;
  87.     WORD     VwIdCount;
  88.     WORD     VwIds[15];
  89.     BYTE     VwDate[12];
  90.     BYTE     VwTime[10];
  91.     WORD     VwUserSaveSize;
  92.     } VWINFO;
  93.  
  94.  
  95. typedef struct VWRTNStag
  96.     {
  97.     SHORT     (__cdecl * StreamOpen)(SOFILE, SHORT, BYTE  *, SOFILTERINFO  * ,HPROC);
  98.     SHORT     (__cdecl * StreamSection)(SOFILE,HPROC);
  99.     SHORT     (__cdecl * StreamRead)(SOFILE, HPROC);
  100.     SHORT     (__cdecl * StreamTell)(SOFILE, HPROC);
  101.     SHORT     (__cdecl * StreamSeek)(SOFILE, HPROC);
  102.     BOOL     (__cdecl * GetInfo)(void  *, WORD, HPROC);
  103.     void     (__cdecl * GetData)(void  *, HPROC);
  104.     void     (__cdecl * SetData)(void  *, HPROC);
  105.     void     (__cdecl * LocalUp)(HIOFILE, SOFILE  *, HPROC);
  106.     void     (__cdecl * LocalDown)(SOFILE, HIOFILE  *, HPROC);
  107.     HPROC     (__cdecl * AllocProc)(void);
  108.     void     (__cdecl * FreeProc)(HPROC);
  109.     void     (__cdecl * SetUser)(DWORD,DWORD,HPROC);
  110.     void     (__cdecl * SetSoRtn)(SHORT, void (__cdecl *)(), HPROC);
  111.     void     (__cdecl * StreamClose)(SOFILE, HPROC);
  112.     void     (__cdecl * GetSectionData)(void  *, HPROC);
  113.     void     (__cdecl * SetSectionData)(void  *, HPROC);
  114.     void     (__cdecl * StreamReadRecord)(SOFILE, DWORD, HPROC);
  115.     void     (__cdecl * DoSpecial)(SOFILE, DWORD, DWORD, DWORD, DWORD, DWORD, HPROC);
  116.     } VWRTNS;
  117.  
  118.