Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com --- dlls/mfreadwrite/Makefile.in | 2 ++ dlls/mfreadwrite/main.c | 13 +++++++++++++ dlls/mfreadwrite/mfreadwrite.spec | 2 ++ 3 files changed, 17 insertions(+)
diff --git a/dlls/mfreadwrite/Makefile.in b/dlls/mfreadwrite/Makefile.in index 4b8ee82..445beaa 100644 --- a/dlls/mfreadwrite/Makefile.in +++ b/dlls/mfreadwrite/Makefile.in @@ -3,3 +3,5 @@ IMPORTLIB = mfreadwrite
C_SRCS = \ main.c + +IDL_SRCS = mf_classes.idl diff --git a/dlls/mfreadwrite/main.c b/dlls/mfreadwrite/main.c index 2a5e29a..b001e68 100644 --- a/dlls/mfreadwrite/main.c +++ b/dlls/mfreadwrite/main.c @@ -31,6 +31,8 @@
WINE_DEFAULT_DEBUG_CHANNEL(mfplat);
+static HINSTANCE mfinstance; + BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID reserved) { switch (reason) @@ -38,6 +40,7 @@ BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID reserved) case DLL_WINE_PREATTACH: return FALSE; /* prefer native version */ case DLL_PROCESS_ATTACH: + mfinstance = instance; DisableThreadLibraryCalls(instance); break; } @@ -65,6 +68,16 @@ HRESULT WINAPI DllCanUnloadNow(void) return S_FALSE; }
+HRESULT WINAPI DllRegisterServer(void) +{ + return __wine_register_resources( mfinstance ); +} + +HRESULT WINAPI DllUnregisterServer(void) +{ + return __wine_unregister_resources( mfinstance ); +} + typedef struct _srcreader { IMFSourceReader IMFSourceReader_iface; diff --git a/dlls/mfreadwrite/mfreadwrite.spec b/dlls/mfreadwrite/mfreadwrite.spec index f46c592..ad61646 100644 --- a/dlls/mfreadwrite/mfreadwrite.spec +++ b/dlls/mfreadwrite/mfreadwrite.spec @@ -1,5 +1,7 @@ @ stdcall -private DllCanUnloadNow() @ stdcall -private DllGetClassObject(ptr ptr ptr) +@ stdcall -private DllRegisterServer() +@ stdcall -private DllUnregisterServer() @ stub MFCreateSinkWriterFromMediaSink @ stub MFCreateSinkWriterFromURL @ stdcall MFCreateSourceReaderFromByteStream(ptr ptr ptr)