[io-layer] Remove versioninfo.{c,h} (#4083)
[mono.git] / mono / metadata / w32process-internals.h
1
2 #ifndef _MONO_METADATA_W32PROCESS_INTERNALS_H_
3 #define _MONO_METADATA_W32PROCESS_INTERNALS_H_
4
5 #include <config.h>
6 #include <glib.h>
7
8 #ifndef HOST_WIN32
9
10 typedef struct {
11         guint32 dwSignature; /* Should contain 0xFEEF04BD on le machines */
12         guint32 dwStrucVersion;
13         guint32 dwFileVersionMS;
14         guint32 dwFileVersionLS;
15         guint32 dwProductVersionMS;
16         guint32 dwProductVersionLS;
17         guint32 dwFileFlagsMask;
18         guint32 dwFileFlags;
19         guint32 dwFileOS;
20         guint32 dwFileType;
21         guint32 dwFileSubtype;
22         guint32 dwFileDateMS;
23         guint32 dwFileDateLS;
24 } VS_FIXEDFILEINFO;
25
26 typedef struct {
27         gpointer lpBaseOfDll;
28         guint32 SizeOfImage;
29         gpointer EntryPoint;
30 } MODULEINFO;
31
32 #define VS_FF_DEBUG             0x0001
33 #define VS_FF_PRERELEASE        0x0002
34 #define VS_FF_PATCHED           0x0004
35 #define VS_FF_PRIVATEBUILD      0x0008
36 #define VS_FF_INFOINFERRED      0x0010
37 #define VS_FF_SPECIALBUILD      0x0020
38
39 guint32
40 mono_w32process_get_pid (gpointer handle);
41
42 gboolean
43 mono_w32process_try_get_modules (gpointer process, gpointer *modules, guint32 size, guint32 *needed);
44
45 guint32
46 mono_w32process_module_get_name (gpointer process, gpointer module, gunichar2 *basename, guint32 size);
47
48 guint32
49 mono_w32process_module_get_filename (gpointer process, gpointer module, gunichar2 *basename, guint32 size);
50
51 gboolean
52 mono_w32process_module_get_information (gpointer process, gpointer module, MODULEINFO *modinfo, guint32 size);
53
54 guint32
55 mono_w32process_get_fileversion_info_size (gunichar2 *filename, guint32 *handle);
56
57 gboolean
58 mono_w32process_get_fileversion_info (gunichar2 *filename, guint32 handle, guint32 len, gpointer data);
59
60 gboolean
61 mono_w32process_ver_query_value (gconstpointer datablock, const gunichar2 *subblock, gpointer *buffer, guint32 *len);
62
63 guint32
64 mono_w32process_ver_language_name (guint32 lang, gunichar2 *lang_out, guint32 lang_len);
65
66 #endif /* HOST_WIN32 */
67
68 #endif /* _MONO_METADATA_W32PROCESS_INTERNALS_H_ */