359{
360 WCHAR wszInstanceKey[] = {
'C',
'L',
'S',
'I',
'D',
'\\',
'{',
'0',
'0',
'0',
'0',
'0',
'0',
'0',
'0',
'-',
361 '0','0','0','0','-','0','0','0','0','-','0','0','0','0','-','0','0','0','0','0','0','0','0',
362 '0','0','0','0','}','\\','I','n','s','t','a','n','c','e', 0 };
363 static const WCHAR wszCLSID[] = {
'C',
'L',
'S',
'I',
'D',0 };
364 static const WCHAR wszInitPropertyBag[] =
365 { 'I','n','i','t','P','r','o','p','e','r','t','y','B','a','g',0 };
368 HKEY hInstanceKey, hInitPropertyBagKey;
369 DWORD dwType, cbBytes =
sizeof(wszCLSIDInstance);
373
375 ppvClassObj);
376
377
382
384
387 {
388
389 FIXME(
"Failed to infer instance CLSID! %s\n",
debugstr_w(wszCLSIDInstance));
392 }
393
394
398
399
400 TRACE(
"No InitPropertyBag key found!\n");
402 }
403
404
405
407 (
LPVOID*)&pInitPropertyBag);
411 }
412
413
414
416 IPropertyBag_Release(pInitPropertyBag);
417
419}
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
HRESULT WINAPI CLSIDFromString(LPCOLESTR idstr, LPCLSID id)
INT WINAPI StringFromGUID2(REFGUID id, LPOLESTR str, INT cmax)
static HRESULT InstanceObjectFactory_Constructor(REFCLSID rclsid, IPropertyBag *pPropertyBag, REFIID riid, LPVOID *ppvObject)
static HRESULT RegistryPropertyBag_Constructor(HKEY hInitPropertyBagKey, REFIID riid, LPVOID *ppvObject)
#define CLASS_E_CLASSNOTAVAILABLE
#define HKEY_CLASSES_ROOT