qcap: Do not store full DLL path in the registry.

This commit is contained in:
Dmitry Timoshkov 2007-01-06 16:51:15 +08:00 committed by Alexandre Julliard
parent e82d2285f4
commit 802967921f
3 changed files with 5 additions and 12 deletions

View file

@ -271,17 +271,13 @@ static HRESULT SetupRegisterAllClasses(const CFactoryTemplate * pList, int num,
* *
****************************************************************************/ ****************************************************************************/
HRESULT SetupRegisterServers(const CFactoryTemplate * pList, int num, HRESULT SetupRegisterServers(const CFactoryTemplate * pList, int num,
HINSTANCE hinst, BOOL bRegister) BOOL bRegister)
{ {
static const WCHAR szFileName[] = {'q','c','a','p','.','d','l','l',0};
HRESULT hr = NOERROR; HRESULT hr = NOERROR;
WCHAR szFileName[MAX_PATH];
IFilterMapper2 *pIFM2 = NULL; IFilterMapper2 *pIFM2 = NULL;
IFilterMapper *pIFM = NULL; IFilterMapper *pIFM = NULL;
/* Win95 wouldn't support the Unicode version of this API!! */
if (!GetModuleFileNameW(hinst, szFileName, MAX_PATH))
return HRESULT_FROM_WIN32(GetLastError());
/* first register all server classes, just to make sure */ /* first register all server classes, just to make sure */
if (bRegister) if (bRegister)
hr = SetupRegisterAllClasses(pList, num, szFileName, TRUE ); hr = SetupRegisterAllClasses(pList, num, szFileName, TRUE );

View file

@ -66,8 +66,7 @@ typedef struct tagCFactoryTemplate {
* CFactoryTemplate * CFactoryTemplate
* *
****************************************************************************/ ****************************************************************************/
extern HRESULT SetupRegisterServers(const CFactoryTemplate * pList, int num, extern HRESULT SetupRegisterServers(const CFactoryTemplate * pList, int num, BOOL bRegister);
HINSTANCE hinst, BOOL bRegister);
/**************************************************************************** /****************************************************************************
* SetupInitializeServers * SetupInitializeServers

View file

@ -45,7 +45,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(qcap);
static LONG objects_ref = 0; static LONG objects_ref = 0;
static LONG server_locks = 0; static LONG server_locks = 0;
static HINSTANCE ghInst = NULL;
static const WCHAR wAudioCaptFilter[] = static const WCHAR wAudioCaptFilter[] =
{'A','u','d','i','o',' ','C','a','p','t','u','r','e',' ','F','i','l','t','e','r',0}; {'A','u','d','i','o',' ','C','a','p','t','u','r','e',' ','F','i','l','t','e','r',0};
@ -158,7 +157,6 @@ BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv)
{ {
case DLL_PROCESS_ATTACH: case DLL_PROCESS_ATTACH:
DisableThreadLibraryCalls(hInstDLL); DisableThreadLibraryCalls(hInstDLL);
ghInst = hInstDLL;
SetupInitializeServers(g_cTemplates, g_numTemplates, TRUE); SetupInitializeServers(g_cTemplates, g_numTemplates, TRUE);
break; break;
case DLL_PROCESS_DETACH: case DLL_PROCESS_DETACH:
@ -175,7 +173,7 @@ HRESULT WINAPI DllRegisterServer(void)
{ {
TRACE("()\n"); TRACE("()\n");
return SetupRegisterServers(g_cTemplates, g_numTemplates, ghInst, TRUE); return SetupRegisterServers(g_cTemplates, g_numTemplates, TRUE);
} }
/*********************************************************************** /***********************************************************************
@ -185,7 +183,7 @@ HRESULT WINAPI DllUnregisterServer(void)
{ {
TRACE("\n"); TRACE("\n");
return SetupRegisterServers(g_cTemplates, g_numTemplates, ghInst, FALSE); return SetupRegisterServers(g_cTemplates, g_numTemplates, FALSE);
} }
/*********************************************************************** /***********************************************************************