Release 970202
[wine] / include / pe_image.h
1 #ifndef __WINE_PE_IMAGE_H
2 #define __WINE_PE_IMAGE_H
3
4 #include <sys/types.h>
5 #include "windows.h"
6 #include "winnt.h"
7 #include "peexe.h"
8
9 struct pe_data {
10         LPIMAGE_NT_HEADERS                      pe_header;
11         LPIMAGE_SECTION_HEADER                  pe_seg;
12         LPIMAGE_IMPORT_DESCRIPTOR               pe_import;
13         LPIMAGE_EXPORT_DIRECTORY                pe_export;
14         LPIMAGE_RESOURCE_DIRECTORY              pe_resource;
15         LPIMAGE_BASE_RELOCATION                 pe_reloc;
16         int base_addr;
17         int load_addr;
18         int vma_size;
19 };
20
21 typedef struct pe_data PE_MODULE;
22
23 extern int PE_unloadImage(HMODULE32 hModule);
24 extern FARPROC32 PE_FindExportedFunction(struct pe_data *pe, LPCSTR funcName);
25 extern void my_wcstombs(char * result, u_short * source, int len);
26 extern PE_EnumResourceTypes32A(HMODULE32,ENUMRESTYPEPROC32A,LONG);
27 extern PE_EnumResourceTypes32W(HMODULE32,ENUMRESTYPEPROC32W,LONG);
28 extern PE_EnumResourceNames32A(HMODULE32,LPCSTR,ENUMRESNAMEPROC32A,LONG);
29 extern PE_EnumResourceNames32W(HMODULE32,LPCWSTR,ENUMRESNAMEPROC32W,LONG);
30 extern PE_EnumResourceLanguages32A(HMODULE32,LPCSTR,LPCSTR,ENUMRESLANGPROC32A,LONG);
31 extern PE_EnumResourceLanguages32W(HMODULE32,LPCWSTR,LPCWSTR,ENUMRESLANGPROC32W,LONG);
32 extern HRSRC32 PE_FindResourceEx32W(HINSTANCE32,LPCWSTR,LPCWSTR,WORD);
33 extern DWORD PE_SizeofResource32(HINSTANCE32,HRSRC32);
34 extern HGLOBAL32 PE_LoadResource32(HINSTANCE32,HRSRC32);
35 extern void PE_InitializeDLLs(HMODULE16);
36
37 #endif /* __WINE_PE_IMAGE_H */