#include <mono/io-layer/handles.h>
#include <mono/io-layer/access.h>
+#include <mono/io-layer/versioninfo.h>
G_BEGIN_DECLS
gpointer environ, const gunichar2 *cwd,
WapiStartupInfo *startup,
WapiProcessInformation *process_info);
+extern gboolean CreateProcessWithLogonW (const gunichar2 *username,
+ const gunichar2 *domain,
+ const gunichar2 *password,
+ const guint32 logonFlags,
+ const gunichar2 *appname,
+ const gunichar2 *cmdline,
+ guint32 create_flags,
+ gpointer environ,
+ const gunichar2 *cwd,
+ WapiStartupInfo *startup,
+ WapiProcessInformation *process_info);
+#define LOGON_WITH_PROFILE 0x00000001
+#define LOGON_NETCREDENTIALS_ONLY 0x00000002
+
extern gpointer GetCurrentProcess (void);
extern guint32 GetProcessId (gpointer handle);
extern guint32 GetCurrentProcessId (void);
extern gboolean EnumProcesses (guint32 *pids, guint32 len, guint32 *needed);
+extern gboolean CloseProcess (gpointer handle);
extern gpointer OpenProcess (guint32 access, gboolean inherit, guint32 pid);
extern gboolean GetExitCodeProcess (gpointer process, guint32 *code);
extern gboolean GetProcessTimes (gpointer process, WapiFileTime *create_time,
guint32 size, guint32 *needed);
extern guint32 GetModuleBaseName (gpointer process, gpointer module,
gunichar2 *basename, guint32 size);
+extern guint32 GetModuleFileNameEx (gpointer process, gpointer module,
+ gunichar2 *filename, guint32 size);
+extern gboolean GetModuleInformation (gpointer process, gpointer module,
+ WapiModuleInfo *modinfo, guint32 size);
extern gboolean GetProcessWorkingSetSize (gpointer process, size_t *min,
size_t *max);
extern gboolean SetProcessWorkingSetSize (gpointer process, size_t min,
extern gboolean TerminateProcess (gpointer process, gint32 exitCode);
+extern guint32 GetPriorityClass (gpointer process);
+extern gboolean SetPriorityClass (gpointer process, guint32 priority_class);
+
+gchar* wapi_process_get_path (pid_t pid);
+
+void wapi_process_set_cli_launcher (char *path);
+
G_END_DECLS
#endif /* _WAPI_PROCESSES_H_ */