David Hedberg : explorerframe: Implement DllGetVersion.
Alexandre Julliard
julliard at winehq.org
Mon Aug 2 11:03:55 CDT 2010
Module: wine
Branch: master
Commit: ddfab6bb9d474172526abb9e1b7ff5fd3cc50d14
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ddfab6bb9d474172526abb9e1b7ff5fd3cc50d14
Author: David Hedberg <david.hedberg at gmail.com>
Date: Sat Jul 31 20:02:46 2010 +0200
explorerframe: Implement DllGetVersion.
---
dlls/explorerframe/explorerframe.spec | 2 +-
dlls/explorerframe/explorerframe_main.c | 30 ++++++++++++++++++++++++++++++
2 files changed, 31 insertions(+), 1 deletions(-)
diff --git a/dlls/explorerframe/explorerframe.spec b/dlls/explorerframe/explorerframe.spec
index dbd9c41..58777b0 100644
--- a/dlls/explorerframe/explorerframe.spec
+++ b/dlls/explorerframe/explorerframe.spec
@@ -4,4 +4,4 @@
@ stdcall -private DllCanUnloadNow()
@ stub DllGetClassObject
-@ stub DllGetVersion
+@ stdcall -private DllGetVersion(ptr)
diff --git a/dlls/explorerframe/explorerframe_main.c b/dlls/explorerframe/explorerframe_main.c
index 4fa5cc6..51f7d39 100644
--- a/dlls/explorerframe/explorerframe_main.c
+++ b/dlls/explorerframe/explorerframe_main.c
@@ -64,3 +64,33 @@ HRESULT WINAPI DllCanUnloadNow(void)
TRACE("refCount is %d\n", EFRAME_refCount);
return EFRAME_refCount ? S_FALSE : S_OK;
}
+
+/*************************************************************************
+ * DllGetVersion (ExplorerFrame.@)
+ */
+HRESULT WINAPI DllGetVersion(DLLVERSIONINFO *info)
+{
+ TRACE("%p\n", info);
+ if(info->cbSize == sizeof(DLLVERSIONINFO) ||
+ info->cbSize == sizeof(DLLVERSIONINFO2))
+ {
+ /* Windows 7 */
+ info->dwMajorVersion = 6;
+ info->dwMinorVersion = 1;
+ info->dwBuildNumber = 7600;
+ info->dwPlatformID = DLLVER_PLATFORM_WINDOWS;
+ if(info->cbSize == sizeof(DLLVERSIONINFO2))
+ {
+ DLLVERSIONINFO2 *info2 = (DLLVERSIONINFO2*)info;
+ info2->dwFlags = 0;
+ info2->ullVersion = MAKEDLLVERULL(info->dwMajorVersion,
+ info->dwMinorVersion,
+ info->dwBuildNumber,
+ 16385); /* "hotfix number" */
+ }
+ return S_OK;
+ }
+
+ WARN("wrong DLLVERSIONINFO size from app.\n");
+ return E_INVALIDARG;
+}
More information about the wine-cvs
mailing list