Module: wine Branch: master Commit: 1bf73ea81d50b363e8798407675025d3cf6148ea URL: http://source.winehq.org/git/wine.git/?a=commit;h=1bf73ea81d50b363e879840767...
Author: Hans Leidekker hans@codeweavers.com Date: Tue Jun 26 16:02:04 2012 +0200
wbemprox: Implement IWbemServices::CreateInstanceEnum.
---
dlls/wbemprox/services.c | 20 +++++++++++++++++--- 1 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/dlls/wbemprox/services.c b/dlls/wbemprox/services.c index b4bc8fb..aeca7c8 100644 --- a/dlls/wbemprox/services.c +++ b/dlls/wbemprox/services.c @@ -366,13 +366,27 @@ static HRESULT WINAPI wbem_services_DeleteInstanceAsync(
static HRESULT WINAPI wbem_services_CreateInstanceEnum( IWbemServices *iface, - const BSTR strFilter, + const BSTR strClass, LONG lFlags, IWbemContext *pCtx, IEnumWbemClassObject **ppEnum ) { - FIXME("\n"); - return WBEM_E_FAILED; + static const WCHAR selectW[] = {'S','E','L','E','C','T',' ','*',' ','F','R','O','M',' ',0}; + WCHAR *query; + HRESULT hr; + + TRACE("%p, %s, 0%08x, %p, %p\n", iface, debugstr_w(strClass), lFlags, pCtx, ppEnum); + + if (lFlags) FIXME("unsupported flags 0x%08x\n", lFlags); + + if (!(query = heap_alloc( strlenW( strClass ) * sizeof(WCHAR) + sizeof(selectW) ))) + return E_OUTOFMEMORY; + strcpyW( query, selectW ); + strcatW( query, strClass ); + + hr = exec_query( query, ppEnum ); + heap_free( query ); + return hr; }
static HRESULT WINAPI wbem_services_CreateInstanceEnumAsync(