1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- function SysFindResource(hModule:TFPResourceHMODULE; lpName: PWideChar; lpType: PWideChar):TFPResourceHandle; cdecl; external 'coredll' name 'FindResourceW';
- function SysLoadResource(hModule:TFPResourceHMODULE; hResInfo: TFPResourceHandle):TFPResourceHGLOBAL; cdecl; external 'coredll' name 'LoadResource';
- function SysSizeofResource(hModule:TFPResourceHMODULE; hResInfo:TFPResourceHandle):DWORD; cdecl; external 'coredll' name 'SizeofResource';
- var
- SysInstance : PtrUInt;external name '_FPC_SysInstance' ;
- Function IntHINSTANCE: TFPResourceHMODULE;
- begin
- IntHINSTANCE:=sysinstance;
- end;
- Function IntEnumResourceTypes(ModuleHandle : TFPResourceHMODULE; EnumFunc : EnumResTypeProc; lParam : PtrInt) : LongBool;
- begin
- IntEnumResourceTypes:=False;
- end;
- Function IntEnumResourceNames(ModuleHandle : TFPResourceHMODULE; ResourceType : PChar; EnumFunc : EnumResNameProc; lParam : PtrInt) : LongBool;
- begin
- IntEnumResourceNames:=False;
- end;
- Function IntEnumResourceLanguages(ModuleHandle : TFPResourceHMODULE; ResourceType, ResourceName : PChar; EnumFunc : EnumResLangProc; lParam : PtrInt) : LongBool;
- begin
- IntEnumResourceLanguages:=False;
- end;
- Function IntFindResource(ModuleHandle: TFPResourceHMODULE; ResourceName, ResourceType: PChar): TFPResourceHandle;
- var
- ws1, ws2: PWideChar;
- begin
- if PtrUInt(ResourceName) shr 16 <> 0 then
- ws1:=PCharToPWideChar(ResourceName)
- else
- ws1:=pointer(ResourceName);
- if PtrUInt(ResourceType) shr 16 <> 0 then
- ws2:=PCharToPWideChar(ResourceType)
- else
- ws2:=pointer(ResourceType);
- IntFindResource:=SysFindResource(ModuleHandle, ws1, ws2);
- if PtrUInt(ResourceType) shr 16 <> 0 then
- FreeMem(ws2);
- if PtrUInt(ResourceName) shr 16 <> 0 then
- FreeMem(ws1);
- end;
- Function IntFindResourceEx(ModuleHandle: TFPResourceHMODULE; ResourceType, ResourceName: PChar; Language : word): TFPResourceHandle;
- begin
- IntFindResourceEx:=FindResource(ModuleHandle,ResourceName,ResourceType);
- end;
- Function IntLoadResource(ModuleHandle: TFPResourceHMODULE; ResHandle: TFPResourceHandle): TFPResourceHGLOBAL;
- begin
- IntLoadResource:=SysLoadresource(ModuleHandle,Reshandle);
- end;
- Function IntSizeofResource(ModuleHandle: TFPResourceHMODULE; ResHandle: TFPResourceHandle): LongWord;
- begin
- IntSizeofResource:=SysSizeofResource(ModuleHandle,Reshandle);
- end;
- Function IntLockResource(ResData: TFPResourceHGLOBAL): Pointer;
- begin
- IntLockResource:=pointer(ResData);
- end;
- Function IntUnlockResource(ResData: TFPResourceHGLOBAL): LongBool;
- begin
- IntUnlockResource:= True;
- end;
- Function IntFreeResource(ResData: TFPResourceHGLOBAL): LongBool;
- begin
- IntFreeResource:= True;
- end;
- const
- InternalResourceManager : TResourceManager =
- (
- HINSTANCEFunc : @IntHINSTANCE;
- EnumResourceTypesFunc : @IntEnumResourceTypes;
- EnumResourceNamesFunc : @IntEnumResourceNames;
- EnumResourceLanguagesFunc : @IntEnumResourceLanguages;
- FindResourceFunc : @IntFindResource;
- FindResourceExFunc : @IntFindResourceEx;
- LoadResourceFunc : @IntLoadResource;
- SizeofResourceFunc : @IntSizeofResource;
- LockResourceFunc : @IntLockResource;
- UnlockResourceFunc : @IntUnlockResource;
- FreeResourceFunc : @IntFreeResource;
- );
|