[2/4] wbemprox: Implement Win32_Process.Handle.
Hans Leidekker
hans at codeweavers.com
Wed Jun 20 05:06:17 CDT 2012
---
dlls/wbemprox/builtin.c | 8 ++++++++
dlls/wbemprox/wbemprox_private.h | 1 +
2 files changed, 9 insertions(+)
diff --git a/dlls/wbemprox/builtin.c b/dlls/wbemprox/builtin.c
index a1ef65e..5c6a4fe 100644
--- a/dlls/wbemprox/builtin.c
+++ b/dlls/wbemprox/builtin.c
@@ -48,6 +48,8 @@ static const WCHAR prop_captionW[] =
{'C','a','p','t','i','o','n',0};
static const WCHAR prop_descriptionW[] =
{'D','e','s','c','r','i','p','t','i','o','n',0};
+static const WCHAR prop_handleW[] =
+ {'H','a','n','d','l','e',0};
static const WCHAR prop_manufacturerW[] =
{'M','a','n','u','f','a','c','t','u','r','e','r',0};
static const WCHAR prop_modelW[] =
@@ -87,6 +89,7 @@ static const struct column col_process[] =
{
{ prop_captionW, CIM_STRING|COL_FLAG_DYNAMIC },
{ prop_descriptionW, CIM_STRING|COL_FLAG_DYNAMIC },
+ { prop_handleW, CIM_STRING|COL_FLAG_DYNAMIC|COL_FLAG_KEY },
{ prop_pprocessidW, CIM_UINT32 },
{ prop_processidW, CIM_UINT32 },
{ prop_threadcountW, CIM_UINT32 }
@@ -142,6 +145,7 @@ struct record_process
{
const WCHAR *caption;
const WCHAR *description;
+ const WCHAR *handle;
UINT32 pprocess_id;
UINT32 process_id;
UINT32 thread_count;
@@ -167,6 +171,8 @@ static const struct record_processor data_processor[] =
static void fill_process( struct table *table )
{
+ static const WCHAR fmtW[] = {'%','u',0};
+ WCHAR handle[11];
struct record_process *rec;
PROCESSENTRY32W entry;
HANDLE snap;
@@ -191,6 +197,8 @@ static void fill_process( struct table *table )
rec = (struct record_process *)(table->data + offset);
rec->caption = heap_strdupW( entry.szExeFile );
rec->description = heap_strdupW( entry.szExeFile );
+ sprintfW( handle, fmtW, entry.th32ProcessID );
+ rec->handle = heap_strdupW( handle );
rec->process_id = entry.th32ProcessID;
rec->pprocess_id = entry.th32ParentProcessID;
rec->thread_count = entry.cntThreads;
diff --git a/dlls/wbemprox/wbemprox_private.h b/dlls/wbemprox/wbemprox_private.h
index 30aecca..779d43d 100644
--- a/dlls/wbemprox/wbemprox_private.h
+++ b/dlls/wbemprox/wbemprox_private.h
@@ -23,6 +23,7 @@
#define COL_TYPE_MASK 0x0000ffff
#define COL_FLAG_DYNAMIC 0x00010000
+#define COL_FLAG_KEY 0x00020000
struct column
{
--
1.7.10
More information about the wine-patches
mailing list