qdvd: Register the DvdGraphBuilder coclass.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49458
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Vijay Kiran Kamuju 2020-06-28 17:33:45 -05:00 committed by Alexandre Julliard
parent 50553b5db1
commit f7164ccfd1
4 changed files with 48 additions and 2 deletions

View File

@ -4,3 +4,6 @@ EXTRADLLFLAGS = -mno-cygwin
C_SRCS = \
qdvd_main.c
IDL_SRCS = \
qdvd_classes.idl

View File

@ -1,4 +1,4 @@
@ stdcall -private DllCanUnloadNow()
@ stdcall -private DllGetClassObject(ptr ptr ptr)
@ stub DllRegisterServer
@ stub DllUnregisterServer
@ stdcall -private DllRegisterServer()
@ stdcall -private DllUnregisterServer()

View File

@ -0,0 +1,26 @@
/*
* Copyright 2020 Vijay Kiran Kamuju
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#pragma makedep register
[
helpstring("DVD Graph Builder"),
threading(both),
uuid(fcc152b7-f372-11d0-8e00-00c04fd7c08b),
]
coclass DvdGraphBuilder {}

View File

@ -21,17 +21,24 @@
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "oleidl.h"
#include "rpcproxy.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(qdvd);
static HINSTANCE qdvd_instance;
BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, void *reserved)
{
if (reason == DLL_WINE_PREATTACH)
return FALSE; /* prefer native version */
if (reason == DLL_PROCESS_ATTACH)
{
qdvd_instance = instance;
DisableThreadLibraryCalls(instance);
}
return TRUE;
}
@ -41,6 +48,16 @@ HRESULT WINAPI DllGetClassObject(REFCLSID clsid, REFIID iid, void **out)
return CLASS_E_CLASSNOTAVAILABLE;
}
HRESULT WINAPI DllRegisterServer(void)
{
return __wine_register_resources(qdvd_instance);
}
HRESULT WINAPI DllUnregisterServer(void)
{
return __wine_unregister_resources(qdvd_instance);
}
HRESULT WINAPI DllCanUnloadNow(void)
{
return S_FALSE;