Module: wine Branch: master Commit: 8a8808984e3ef5de3da2c6dd10fe5111d9ef3882 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8a8808984e3ef5de3da2c6dd10...
Author: Vincent Povirk vincent@codeweavers.com Date: Thu Jan 27 16:05:34 2011 -0600
mscoree: Implement GetFileVersion.
---
dlls/mscoree/metahost.c | 2 +- dlls/mscoree/mscoree.spec | 2 +- dlls/mscoree/mscoree_main.c | 11 +++++++++++ dlls/mscoree/mscoree_private.h | 3 +++ 4 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/dlls/mscoree/metahost.c b/dlls/mscoree/metahost.c index 889e1fb..2cafcb8 100644 --- a/dlls/mscoree/metahost.c +++ b/dlls/mscoree/metahost.c @@ -963,7 +963,7 @@ static HRESULT WINAPI CLRMetaHost_GetRuntime(ICLRMetaHost* iface, return CLR_E_SHIM_RUNTIME; }
-static HRESULT WINAPI CLRMetaHost_GetVersionFromFile(ICLRMetaHost* iface, +HRESULT WINAPI CLRMetaHost_GetVersionFromFile(ICLRMetaHost* iface, LPCWSTR pwzFilePath, LPWSTR pwzBuffer, DWORD *pcchBuffer) { ASSEMBLY *assembly; diff --git a/dlls/mscoree/mscoree.spec b/dlls/mscoree/mscoree.spec index 1d4d7f7..8cf548d 100644 --- a/dlls/mscoree/mscoree.spec +++ b/dlls/mscoree/mscoree.spec @@ -43,7 +43,7 @@ @ stdcall GetCORSystemDirectory(ptr long ptr) @ stdcall GetCORVersion(ptr long ptr) @ stub GetCompileInfo -@ stub GetFileVersion +@ stdcall GetFileVersion(wstr ptr long ptr) @ stub GetHashFromAssemblyFile @ stub GetHashFromAssemblyFileW @ stub GetHashFromBlob diff --git a/dlls/mscoree/mscoree_main.c b/dlls/mscoree/mscoree_main.c index 1f2cfb0..a3e1cec 100644 --- a/dlls/mscoree/mscoree_main.c +++ b/dlls/mscoree/mscoree_main.c @@ -250,6 +250,17 @@ HRESULT WINAPI GetRequestedRuntimeInfo(LPCWSTR pExe, LPCWSTR pwszVersion, LPCWST return ret; }
+HRESULT WINAPI GetFileVersion(LPCWSTR szFilename, LPWSTR szBuffer, DWORD cchBuffer, DWORD *dwLength) +{ + TRACE("(%s, %p, %d, %p)\n", debugstr_w(szFilename), szBuffer, cchBuffer, dwLength); + + if (!szFilename || !dwLength) + return E_POINTER; + + *dwLength = cchBuffer; + return CLRMetaHost_GetVersionFromFile(0, szFilename, szBuffer, dwLength); +} + HRESULT WINAPI LoadLibraryShim( LPCWSTR szDllName, LPCWSTR szVersion, LPVOID pvReserved, HMODULE * phModDll) { HRESULT ret=S_OK; diff --git a/dlls/mscoree/mscoree_private.h b/dlls/mscoree/mscoree_private.h index 9ece9cc..222b3ca 100644 --- a/dlls/mscoree/mscoree_private.h +++ b/dlls/mscoree/mscoree_private.h @@ -28,6 +28,9 @@ extern char *WtoA(LPCWSTR wstr);
extern HRESULT CLRMetaHost_CreateInstance(REFIID riid, void **ppobj);
+extern HRESULT WINAPI CLRMetaHost_GetVersionFromFile(ICLRMetaHost* iface, + LPCWSTR pwzFilePath, LPWSTR pwzBuffer, DWORD *pcchBuffer); + typedef struct tagASSEMBLY ASSEMBLY;
HRESULT assembly_create(ASSEMBLY **out, LPCWSTR file);