source: trunk/include/custombuild.h@ 8082

Last change on this file since 8082 was 8012, checked in by sandervl, 24 years ago

Added custom findresource hook support

File size: 4.4 KB
RevLine 
[7061]1#ifndef __CUSTOMBUILD_H__
2#define __CUSTOMBUILD_H__
3
[7238]4//HKEY_LOCAL_MACHINE
5#define CUSTOM_BUILD_OPTIONS_KEY "System\\CustomBuild"
6#define DISABLE_AUDIO_KEY "DisableAudio"
7
[7061]8extern BOOL fCustomBuild;
9
10void InitDirectoriesCustom(char *szSystemDir, char *szWindowsDir);
11
12void DisableOdinIni();
[7078]13void DisableOdinSysMenuItems();
[7061]14
[7246]15
[7763]16typedef HANDLE (* WIN32API PFNDRVOPEN)(LPVOID lpDriverData, DWORD dwAccess, DWORD dwShare, DWORD dwFlags, PVOID *ppHandleData);
17typedef void (* WIN32API PFNDRVCLOSE)(LPVOID lpDriverData, HANDLE hDevice, DWORD dwFlags, PVOID lpHandleData);
18typedef BOOL (* WIN32API PFNDRVIOCTL)(LPVOID lpDriverData, HANDLE hDevice, DWORD dwFlags, DWORD dwIoControlCode,
[7572]19 LPVOID lpInBuffer, DWORD nInBufferSize,
20 LPVOID lpOutBuffer, DWORD nOutBufferSize,
[7756]21 LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped,
[7763]22 LPVOID lpHandleData);
[7246]23
[7763]24typedef BOOL (* WIN32API PFNDRVREAD)(LPVOID lpDriverData,
25 HANDLE hDevice,
[7631]26 DWORD dwFlags,
[7572]27 LPCVOID lpBuffer,
28 DWORD nNumberOfBytesToRead,
29 LPDWORD lpNumberOfBytesRead,
30 LPOVERLAPPED lpOverlapped,
[7756]31 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,
[7763]32 LPVOID lpHandleData);
[7572]33
[7763]34typedef BOOL (* WIN32API PFNDRVWRITE)(LPVOID lpDriverData,
35 HANDLE hDevice,
[7631]36 DWORD dwFlags,
[7572]37 LPCVOID lpBuffer,
38 DWORD nNumberOfBytesToWrite,
39 LPDWORD lpNumberOfBytesWrite,
40 LPOVERLAPPED lpOverlapped,
[7756]41 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,
[7763]42 LPVOID lpHandleData);
[7572]43
[7763]44typedef BOOL (* WIN32API PFNDRVCANCELIO)(LPVOID lpDriverData, HANDLE hDevice, DWORD dwFlags, PVOID lpHandleData);
45typedef DWORD (* WIN32API PFNDRVGETOVERLAPPEDRESULT)(LPVOID lpDriverData,
46 HANDLE hDevice,
[7631]47 DWORD dwFlags,
[7629]48 LPOVERLAPPED lpOverlapped,
49 LPDWORD lpcbTransfer,
[7756]50 BOOL fWait,
[7763]51 LPVOID lpHandleData);
[7572]52
[7246]53BOOL WIN32API RegisterCustomDriver(PFNDRVOPEN pfnDriverOpen, PFNDRVCLOSE pfnDriverClose,
[7572]54 PFNDRVIOCTL pfnDriverIOCtl, PFNDRVREAD pfnDriverRead,
[7629]55 PFNDRVWRITE pfnDriverWrite, PFNDRVCANCELIO pfnDriverCancelIo,
56 PFNDRVGETOVERLAPPEDRESULT pfnDriverGetOverlappedResult,
[7763]57 LPCSTR lpDriverName, LPVOID lpDriverData);
[7246]58
[7763]59BOOL WIN32API UnRegisterCustomDriver(LPCSTR lpDriverName);
[7247]60
[7763]61
[7247]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
[8012]68BOOL WIN32API SetCustomDialogHook(HOOKPROC pfnDialogProc);
69BOOL WIN32API ClearCustomDialogHook();
[7247]70
[8012]71//Override FindResource function
72typedef void (* WIN32API PFNFINDRESOURCEEXA)(HINSTANCE *phModule, LPSTR *lplpszName, LPSTR *lplpszType, WORD *lpLanguage);
73typedef void (* WIN32API PFNFINDRESOURCEEXW)(HINSTANCE *phModule, LPWSTR *lplpszName, LPWSTR *lplpszType, WORD *lpLanguage);
[7251]74
[8012]75BOOL WIN32API SetCustomFindResource(PFNFINDRESOURCEEXA pfnFindResourceA, PFNFINDRESOURCEEXW pfnFindResourceW);
76
[7251]77//Set the default language in kernel32
78void WIN32API SetDefaultLanguage(DWORD deflang);
79
[7621]80//Override pm keyboard hook dll name
81void WIN32API SetCustomPMHookDll(LPSTR pszKbdDllName);
[7251]82
[7674]83//Turn off wave audio in winmm
84void WIN32API DisableWaveAudio();
85
[7943]86//force color to mono cursor conversion
87void WIN32API CustForceMonoCursor();
88
[7061]89#endif /*__CUSTOMBUILD_H__*/
90
Note: See TracBrowser for help on using the repository browser.