"urlmon.dll",
"Both"
},
+ { &CLSID_PSFactoryBuffer,
+ "URLMoniker ProxyStub Factory",
+ NULL,
+ "urlmon.dll",
+ "Apartment"
+ },
{ NULL } /* list terminator */
};
hAdvpack = LoadLibraryW(wszAdvpack);
pRegInstall = (void *)GetProcAddress(hAdvpack, "RegInstall");
- hres = pRegInstall(URLMON_hInstance, doregister ? "RegisterDll" : "UnregisterDll", &strtable);
+ hres = pRegInstall(hProxyDll, doregister ? "RegisterDll" : "UnregisterDll", &strtable);
for(i=0; i < sizeof(pse)/sizeof(pse[0]); i++)
heap_free(pse[i].pszValue);
TRACE("\n");
- hr = register_coclasses(coclass_list);
- if (SUCCEEDED(hr))
+ hr = URLMON_DllRegisterServer();
+ if(SUCCEEDED(hr))
+ hr = register_coclasses(coclass_list);
+ if(SUCCEEDED(hr))
hr = register_interfaces(interface_list);
- if(FAILED(hr))
- return hr;
- return register_inf(TRUE);
+ if(SUCCEEDED(hr))
+ hr = register_inf(TRUE);
+ return hr;
}
/***********************************************************************
TRACE("\n");
- hr = unregister_coclasses(coclass_list);
- if (SUCCEEDED(hr))
+ hr = URLMON_DllUnregisterServer();
+ if(SUCCEEDED(hr))
+ hr = unregister_coclasses(coclass_list);
+ if(SUCCEEDED(hr))
hr = unregister_interfaces(interface_list);
- if(FAILED(hr))
- return hr;
- return register_inf(FALSE);
+ if(SUCCEEDED(hr))
+ hr = register_inf(FALSE);
+ return hr;
}