[PATCH 2/4] mfplat: Implement MFTUnregister.
Alistair Leslie-Hughes
leslie_alistair at hotmail.com
Thu Apr 27 23:28:40 CDT 2017
From: Michael Müller <michael at fds-team.de>
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
---
dlls/mfplat/main.c | 38 ++++++++++++++++++++++++++++++++++++++
dlls/mfplat/mfplat.spec | 2 +-
2 files changed, 39 insertions(+), 1 deletion(-)
diff --git a/dlls/mfplat/main.c b/dlls/mfplat/main.c
index 424c7f4..84b2025 100644
--- a/dlls/mfplat/main.c
+++ b/dlls/mfplat/main.c
@@ -191,6 +191,44 @@ HRESULT WINAPI MFTRegister(CLSID clsid, GUID category, LPWSTR name, UINT32 flags
}
/***********************************************************************
+ * MFTUnregister (mfplat.@)
+ */
+HRESULT WINAPI MFTUnregister(CLSID clsid)
+{
+ WCHAR buffer[64], category[MAX_PATH];
+ HKEY htransform, hcategory, htmp;
+ DWORD size = MAX_PATH;
+ DWORD index = 0;
+
+ FIXME("(%s)\n", debugstr_guid(&clsid));
+
+ GUIDToString(buffer, &clsid);
+
+ if (!RegOpenKeyW(HKEY_LOCAL_MACHINE, transform_keyW, &htransform))
+ {
+ RegDeleteKeyW(htransform, buffer);
+ RegCloseKey(htransform);
+ }
+
+ if (!RegOpenKeyW(HKEY_LOCAL_MACHINE, categories_keyW, &hcategory))
+ {
+ while (RegEnumKeyExW(hcategory, index, category, &size, NULL, NULL, NULL, NULL) == ERROR_SUCCESS)
+ {
+ if (!RegOpenKeyW(hcategory, category, &htmp))
+ {
+ RegDeleteKeyW(htmp, buffer);
+ RegCloseKey(htmp);
+ }
+ size = MAX_PATH;
+ index++;
+ }
+ RegCloseKey(hcategory);
+ }
+
+ return S_OK;
+}
+
+/***********************************************************************
* MFStartup (mfplat.@)
*/
HRESULT WINAPI MFStartup(ULONG version, DWORD flags)
diff --git a/dlls/mfplat/mfplat.spec b/dlls/mfplat/mfplat.spec
index 042a919..dc6f402 100644
--- a/dlls/mfplat/mfplat.spec
+++ b/dlls/mfplat/mfplat.spec
@@ -140,7 +140,7 @@
@ stdcall MFTRegister(int128 int128 wstr long long ptr long ptr ptr)
@ stub MFTRegisterLocal
@ stub MFTRegisterLocalByCLSID
-@ stub MFTUnregister
+@ stdcall MFTUnregister(int128)
@ stub MFTUnregisterLocal
@ stub MFTUnregisterLocalByCLSID
@ stub MFTraceError
--
1.9.1
More information about the wine-patches
mailing list