Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / metadata / w32process-internals.h
index ad59f4c6d8b6f8c9e2818876b2f8e28eba35a65f..1bb016736b4186b61df3c54289e26ca0461e010c 100644 (file)
@@ -1,3 +1,6 @@
+/**
+ * \file
+ */
 
 #ifndef _MONO_METADATA_W32PROCESS_INTERNALS_H_
 #define _MONO_METADATA_W32PROCESS_INTERNALS_H_
@@ -5,9 +8,36 @@
 #include <config.h>
 #include <glib.h>
 
-#include "io-layer/io-layer.h"
+#ifndef HOST_WIN32
 
-#if !defined(HOST_WIN32)
+typedef struct {
+       guint32 dwSignature; /* Should contain 0xFEEF04BD on le machines */
+       guint32 dwStrucVersion;
+       guint32 dwFileVersionMS;
+       guint32 dwFileVersionLS;
+       guint32 dwProductVersionMS;
+       guint32 dwProductVersionLS;
+       guint32 dwFileFlagsMask;
+       guint32 dwFileFlags;
+       guint32 dwFileOS;
+       guint32 dwFileType;
+       guint32 dwFileSubtype;
+       guint32 dwFileDateMS;
+       guint32 dwFileDateLS;
+} VS_FIXEDFILEINFO;
+
+typedef struct {
+       gpointer lpBaseOfDll;
+       guint32 SizeOfImage;
+       gpointer EntryPoint;
+} MODULEINFO;
+
+#define VS_FF_DEBUG            0x0001
+#define VS_FF_PRERELEASE       0x0002
+#define VS_FF_PATCHED          0x0004
+#define VS_FF_PRIVATEBUILD     0x0008
+#define VS_FF_INFOINFERRED     0x0010
+#define VS_FF_SPECIALBUILD     0x0020
 
 guint32
 mono_w32process_get_pid (gpointer handle);
@@ -24,6 +54,18 @@ mono_w32process_module_get_filename (gpointer process, gpointer module, gunichar
 gboolean
 mono_w32process_module_get_information (gpointer process, gpointer module, MODULEINFO *modinfo, guint32 size);
 
-#endif /* !defined(HOST_WIN32) */
+guint32
+mono_w32process_get_fileversion_info_size (gunichar2 *filename, guint32 *handle);
+
+gboolean
+mono_w32process_get_fileversion_info (gunichar2 *filename, guint32 handle, guint32 len, gpointer data);
+
+gboolean
+mono_w32process_ver_query_value (gconstpointer datablock, const gunichar2 *subblock, gpointer *buffer, guint32 *len);
+
+guint32
+mono_w32process_ver_language_name (guint32 lang, gunichar2 *lang_out, guint32 lang_len);
+
+#endif /* HOST_WIN32 */
 
 #endif /* _MONO_METADATA_W32PROCESS_INTERNALS_H_ */