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 |
|
---|
8 | extern BOOL fCustomBuild;
|
---|
9 |
|
---|
10 | void InitDirectoriesCustom(char *szSystemDir, char *szWindowsDir);
|
---|
11 |
|
---|
12 | void DisableOdinIni();
|
---|
13 | void DisableOdinSysMenuItems();
|
---|
14 |
|
---|
15 |
|
---|
16 | typedef HANDLE (* WIN32API PFNDRVOPEN)(LPVOID lpDriverData, DWORD dwAccess, DWORD dwShare, DWORD dwFlags, PVOID *ppHandleData);
|
---|
17 | typedef void (* WIN32API PFNDRVCLOSE)(LPVOID lpDriverData, HANDLE hDevice, DWORD dwFlags, PVOID lpHandleData);
|
---|
18 | typedef BOOL (* WIN32API PFNDRVIOCTL)(LPVOID lpDriverData, HANDLE hDevice, DWORD dwFlags, DWORD dwIoControlCode,
|
---|
19 | LPVOID lpInBuffer, DWORD nInBufferSize,
|
---|
20 | LPVOID lpOutBuffer, DWORD nOutBufferSize,
|
---|
21 | LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped,
|
---|
22 | LPVOID lpHandleData);
|
---|
23 |
|
---|
24 | typedef BOOL (* WIN32API PFNDRVREAD)(LPVOID lpDriverData,
|
---|
25 | HANDLE hDevice,
|
---|
26 | DWORD dwFlags,
|
---|
27 | LPCVOID lpBuffer,
|
---|
28 | DWORD nNumberOfBytesToRead,
|
---|
29 | LPDWORD lpNumberOfBytesRead,
|
---|
30 | LPOVERLAPPED lpOverlapped,
|
---|
31 | LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,
|
---|
32 | LPVOID lpHandleData);
|
---|
33 |
|
---|
34 | typedef BOOL (* WIN32API PFNDRVWRITE)(LPVOID lpDriverData,
|
---|
35 | HANDLE hDevice,
|
---|
36 | DWORD dwFlags,
|
---|
37 | LPCVOID lpBuffer,
|
---|
38 | DWORD nNumberOfBytesToWrite,
|
---|
39 | LPDWORD lpNumberOfBytesWrite,
|
---|
40 | LPOVERLAPPED lpOverlapped,
|
---|
41 | LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,
|
---|
42 | LPVOID lpHandleData);
|
---|
43 |
|
---|
44 | typedef BOOL (* WIN32API PFNDRVCANCELIO)(LPVOID lpDriverData, HANDLE hDevice, DWORD dwFlags, PVOID lpHandleData);
|
---|
45 | typedef DWORD (* WIN32API PFNDRVGETOVERLAPPEDRESULT)(LPVOID lpDriverData,
|
---|
46 | HANDLE hDevice,
|
---|
47 | DWORD dwFlags,
|
---|
48 | LPOVERLAPPED lpOverlapped,
|
---|
49 | LPDWORD lpcbTransfer,
|
---|
50 | BOOL fWait,
|
---|
51 | LPVOID lpHandleData);
|
---|
52 |
|
---|
53 | BOOL WIN32API RegisterCustomDriver(PFNDRVOPEN pfnDriverOpen, PFNDRVCLOSE pfnDriverClose,
|
---|
54 | PFNDRVIOCTL pfnDriverIOCtl, PFNDRVREAD pfnDriverRead,
|
---|
55 | PFNDRVWRITE pfnDriverWrite, PFNDRVCANCELIO pfnDriverCancelIo,
|
---|
56 | PFNDRVGETOVERLAPPEDRESULT pfnDriverGetOverlappedResult,
|
---|
57 | LPCSTR lpDriverName, LPVOID lpDriverData);
|
---|
58 |
|
---|
59 | BOOL WIN32API UnRegisterCustomDriver(LPCSTR lpDriverName);
|
---|
60 |
|
---|
61 |
|
---|
62 | //SetDialogHook can be used by a custom Odin build to register a hook procedure
|
---|
63 | //that gets called before or after dialog creation
|
---|
64 |
|
---|
65 | #define HCUSTOM_PREDIALOGCREATION 0
|
---|
66 | #define HCUSTOM_POSTDIALOGCREATION 1
|
---|
67 |
|
---|
68 | BOOL WIN32API SetCustomDialogHook(HOOKPROC pfnDialogProc);
|
---|
69 | BOOL WIN32API ClearCustomDialogHook();
|
---|
70 |
|
---|
71 | //Override FindResource function
|
---|
72 | typedef void (* WIN32API PFNFINDRESOURCEEXA)(HINSTANCE *phModule, LPSTR *lplpszName, LPSTR *lplpszType, WORD *lpLanguage);
|
---|
73 | typedef void (* WIN32API PFNFINDRESOURCEEXW)(HINSTANCE *phModule, LPWSTR *lplpszName, LPWSTR *lplpszType, WORD *lpLanguage);
|
---|
74 |
|
---|
75 | BOOL WIN32API SetCustomFindResource(PFNFINDRESOURCEEXA pfnFindResourceA, PFNFINDRESOURCEEXW pfnFindResourceW);
|
---|
76 |
|
---|
77 | //Set the default language in kernel32
|
---|
78 | void WIN32API SetDefaultLanguage(DWORD deflang);
|
---|
79 |
|
---|
80 | //Override pm keyboard hook dll name
|
---|
81 | void WIN32API SetCustomPMHookDll(LPSTR pszKbdDllName);
|
---|
82 |
|
---|
83 | //Turn off wave audio in winmm
|
---|
84 | void WIN32API DisableWaveAudio();
|
---|
85 |
|
---|
86 | //force color to mono cursor conversion
|
---|
87 | void WIN32API CustForceMonoCursor();
|
---|
88 |
|
---|
89 | #endif /*__CUSTOMBUILD_H__*/
|
---|
90 |
|
---|