00001
00002
00003
00004
00005 #ifndef __WINE_DRIVER_H
00006 #define __WINE_DRIVER_H
00007
00008 #include "windef.h"
00009
00010 #define MMSYSERR_BASE 0
00011
00012 #define MMSYSERR_NOERROR 0
00013 #define MMSYSERR_ERROR (MMSYSERR_BASE + 1)
00014 #define MMSYSERR_BADDEVICEID (MMSYSERR_BASE + 2)
00015 #define MMSYSERR_NOTENABLED (MMSYSERR_BASE + 3)
00016 #define MMSYSERR_ALLOCATED (MMSYSERR_BASE + 4)
00017 #define MMSYSERR_INVALHANDLE (MMSYSERR_BASE + 5)
00018 #define MMSYSERR_NODRIVER (MMSYSERR_BASE + 6)
00019 #define MMSYSERR_NOMEM (MMSYSERR_BASE + 7)
00020 #define MMSYSERR_NOTSUPPORTED (MMSYSERR_BASE + 8)
00021 #define MMSYSERR_BADERRNUM (MMSYSERR_BASE + 9)
00022 #define MMSYSERR_INVALFLAG (MMSYSERR_BASE + 10)
00023 #define MMSYSERR_INVALPARAM (MMSYSERR_BASE + 11)
00024 #define MMSYSERR_LASTERROR (MMSYSERR_BASE + 11)
00025
00026 #define DRV_LOAD 0x0001
00027 #define DRV_ENABLE 0x0002
00028 #define DRV_OPEN 0x0003
00029 #define DRV_CLOSE 0x0004
00030 #define DRV_DISABLE 0x0005
00031 #define DRV_FREE 0x0006
00032 #define DRV_CONFIGURE 0x0007
00033 #define DRV_QUERYCONFIGURE 0x0008
00034 #define DRV_INSTALL 0x0009
00035 #define DRV_REMOVE 0x000A
00036 #define DRV_EXITSESSION 0x000B
00037 #define DRV_EXITAPPLICATION 0x000C
00038 #define DRV_POWER 0x000F
00039
00040 #define DRV_RESERVED 0x0800
00041 #define DRV_USER 0x4000
00042
00043 #define DRVCNF_CANCEL 0x0000
00044 #define DRVCNF_OK 0x0001
00045 #define DRVCNF_RESTART 0x0002
00046
00047 #define DRVEA_NORMALEXIT 0x0001
00048 #define DRVEA_ABNORMALEXIT 0x0002
00049
00050 #define DRV_SUCCESS 0x0001
00051 #define DRV_FAILURE 0x0000
00052
00053 #define GND_FIRSTINSTANCEONLY 0x00000001
00054
00055 #define GND_FORWARD 0x00000000
00056 #define GND_REVERSE 0x00000002
00057
00058 typedef struct {
00059 DWORD dwDCISize;
00060 LPCSTR lpszDCISectionName;
00061 LPCSTR lpszDCIAliasName;
00062 } DRVCONFIGINFO16, *LPDRVCONFIGINFO16;
00063
00064 typedef struct {
00065 DWORD dwDCISize;
00066 LPCWSTR lpszDCISectionName;
00067 LPCWSTR lpszDCIAliasName;
00068 } DRVCONFIGINFO, *LPDRVCONFIGINFO;
00069
00070
00071
00072
00073
00074
00075 typedef struct
00076 {
00077 UINT16 length;
00078 HDRVR16 hDriver;
00079 HINSTANCE16 hModule;
00080 CHAR szAliasName[128];
00081 } DRIVERINFOSTRUCT16, *LPDRIVERINFOSTRUCT16;
00082
00083 LRESULT WINAPI DefDriverProc16(DWORD dwDevID, HDRVR16 hDriv, UINT16 wMsg,
00084 LPARAM dwParam1, LPARAM dwParam2);
00085 LRESULT WINAPI DefDriverProc(DWORD dwDriverIdentifier, HDRVR hdrvr,
00086 UINT Msg, LPARAM lParam1, LPARAM lParam2);
00087 HDRVR16 WINAPI OpenDriver16(LPCSTR szDriverName, LPCSTR szSectionName,
00088 LPARAM lParam2);
00089 HDRVR WINAPI OpenDriverA(LPCSTR szDriverName, LPCSTR szSectionName,
00090 LPARAM lParam2);
00091 HDRVR WINAPI OpenDriverW(LPCWSTR szDriverName, LPCWSTR szSectionName,
00092 LPARAM lParam2);
00093 #define OpenDriver WINELIB_NAME_AW(OpenDriver)
00094 LRESULT WINAPI CloseDriver16(HDRVR16 hDriver, LPARAM lParam1, LPARAM lParam2);
00095 LRESULT WINAPI CloseDriver(HDRVR hDriver, LPARAM lParam1, LPARAM lParam2);
00096 LRESULT WINAPI SendDriverMessage16( HDRVR16 hDriver, UINT16 message,
00097 LPARAM lParam1, LPARAM lParam2 );
00098 LRESULT WINAPI SendDriverMessage( HDRVR hDriver, UINT message,
00099 LPARAM lParam1, LPARAM lParam2 );
00100 HMODULE16 WINAPI GetDriverModuleHandle16(HDRVR16 hDriver);
00101 HMODULE WINAPI GetDriverModuleHandle(HDRVR hDriver);
00102
00103 DWORD WINAPI GetDriverFlags( HDRVR hDriver );
00104 #ifdef __WINE__
00105
00106
00107
00108 #define WINE_GDF_EXIST 0x80000000
00109 #define WINE_GDF_16BIT 0x10000000
00110 #endif
00111
00112 #endif