source: trunk/include/custombuild.h@ 7762

Last change on this file since 7762 was 7756, checked in by sandervl, 24 years ago

Add driver data parameter to custom device driver calls

File size: 3.6 KB
Line 
1#ifndef __CUSTOMBUILD_H__
2#define __CUSTOMBUILD_H__
3
4//HKEY_LOCAL_MACHINE
5#define CUSTOM_BUILD_OPTIONS_KEY "System\\CustomBuild"
6#define DISABLE_AUDIO_KEY "DisableAudio"
7
8extern BOOL fCustomBuild;
9
10void InitDirectoriesCustom(char *szSystemDir, char *szWindowsDir);
11
12void DisableOdinIni();
13void DisableOdinSysMenuItems();
14
15
16typedef HANDLE (* WIN32API PFNDRVOPEN)(DWORD dwAccess, DWORD dwShare, DWORD dwFlags, PVOID *ppDriverData);
17typedef void (* WIN32API PFNDRVCLOSE)(HANDLE hDevice, DWORD dwFlags, PVOID lpDriverData);
18typedef BOOL (* WIN32API PFNDRVIOCTL)(HANDLE hDevice, DWORD dwFlags, DWORD dwIoControlCode,
19 LPVOID lpInBuffer, DWORD nInBufferSize,
20 LPVOID lpOutBuffer, DWORD nOutBufferSize,
21 LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped,
22 PVOID lpDriverData);
23
24typedef BOOL (* WIN32API PFNDRVREAD)(HANDLE hDevice,
25 DWORD dwFlags,
26 LPCVOID lpBuffer,
27 DWORD nNumberOfBytesToRead,
28 LPDWORD lpNumberOfBytesRead,
29 LPOVERLAPPED lpOverlapped,
30 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,
31 PVOID lpDriverData);
32
33typedef BOOL (* WIN32API PFNDRVWRITE)(HANDLE hDevice,
34 DWORD dwFlags,
35 LPCVOID lpBuffer,
36 DWORD nNumberOfBytesToWrite,
37 LPDWORD lpNumberOfBytesWrite,
38 LPOVERLAPPED lpOverlapped,
39 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,
40 PVOID lpDriverData);
41
42typedef BOOL (* WIN32API PFNDRVCANCELIO)(HANDLE hDevice, DWORD dwFlags, PVOID lpDriverData);
43typedef DWORD (* WIN32API PFNDRVGETOVERLAPPEDRESULT)(HANDLE hDevice,
44 DWORD dwFlags,
45 LPOVERLAPPED lpOverlapped,
46 LPDWORD lpcbTransfer,
47 BOOL fWait,
48 PVOID lpDriverData);
49
50BOOL WIN32API RegisterCustomDriver(PFNDRVOPEN pfnDriverOpen, PFNDRVCLOSE pfnDriverClose,
51 PFNDRVIOCTL pfnDriverIOCtl, PFNDRVREAD pfnDriverRead,
52 PFNDRVWRITE pfnDriverWrite, PFNDRVCANCELIO pfnDriverCancelIo,
53 PFNDRVGETOVERLAPPEDRESULT pfnDriverGetOverlappedResult,
54 LPCSTR lpDeviceName);
55
56
57//SetDialogHook can be used by a custom Odin build to register a hook procedure
58//that gets called before or after dialog creation
59
60#define HCUSTOM_PREDIALOGCREATION 0
61#define HCUSTOM_POSTDIALOGCREATION 1
62
63BOOL WIN32API SetDialogHook(HOOKPROC pfnDialogProc);
64BOOL WIN32API ClearDialogHook();
65
66
67//Set the default language in kernel32
68void WIN32API SetDefaultLanguage(DWORD deflang);
69
70//Override pm keyboard hook dll name
71void WIN32API SetCustomPMHookDll(LPSTR pszKbdDllName);
72
73//Turn off wave audio in winmm
74void WIN32API DisableWaveAudio();
75
76#endif /*__CUSTOMBUILD_H__*/
77
Note: See TracBrowser for help on using the repository browser.