* GetFileVersionInfoSizeW [VERSION.@]
*/
DWORD WINAPI GetFileVersionInfoSizeW( LPCWSTR filename, LPDWORD handle )
+{
+ return GetFileVersionInfoSizeExW( 0, filename, handle );
+}
+
+/***********************************************************************
+ * GetFileVersionInfoSizeA [VERSION.@]
+ */
+DWORD WINAPI GetFileVersionInfoSizeA( LPCSTR filename, LPDWORD handle )
+{
+ return GetFileVersionInfoSizeExA( 0, filename, handle );
+}
+
+/******************************************************************************
+ * GetFileVersionInfoSizeExW [VERSION.@]
+ */
+DWORD WINAPI GetFileVersionInfoSizeExW( DWORD flags, LPCWSTR filename, LPDWORD handle )
{
DWORD len, offset, magic = 1;
HFILE lzfd;
HMODULE hModule;
OFSTRUCT ofs;
+ if (flags)
+ {
+ FIXME("stub: %x %s %p\n", flags, wine_dbgstr_w(filename), handle);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
+ }
+
TRACE("(%s,%p)\n", debugstr_w(filename), handle );
if (handle) *handle = 0;
if ((magic == 1) && (hModule = LoadLibraryExW( filename, 0, LOAD_LIBRARY_AS_DATAFILE )))
{
HRSRC hRsrc = FindResourceW( hModule, MAKEINTRESOURCEW(VS_VERSION_INFO),
- MAKEINTRESOURCEW(VS_FILE_INFO) );
+ (LPWSTR)VS_FILE_INFO );
if (hRsrc)
{
magic = IMAGE_NT_SIGNATURE;
}
}
-/***********************************************************************
- * GetFileVersionInfoSizeA [VERSION.@]
+/******************************************************************************
+ * GetFileVersionInfoSizeExA [VERSION.@]
*/
-DWORD WINAPI GetFileVersionInfoSizeA( LPCSTR filename, LPDWORD handle )
+DWORD WINAPI GetFileVersionInfoSizeExA( DWORD flags, LPCSTR filename, LPDWORD handle )
{
UNICODE_STRING filenameW;
DWORD retval;
else
filenameW.Buffer = NULL;
- retval = GetFileVersionInfoSizeW(filenameW.Buffer, handle);
+ retval = GetFileVersionInfoSizeExW(0, filenameW.Buffer, handle);
RtlFreeUnicodeString(&filenameW);
}
/***********************************************************************
- * GetFileVersionInfoW [VERSION.@]
+ * GetFileVersionInfoExW [VERSION.@]
*/
-BOOL WINAPI GetFileVersionInfoW( LPCWSTR filename, DWORD handle,
- DWORD datasize, LPVOID data )
+BOOL WINAPI GetFileVersionInfoExW( DWORD flags, LPCWSTR filename, DWORD handle, DWORD datasize, LPVOID data )
{
static const char signature[4] = "FE2X";
DWORD len, offset, magic = 1;
HMODULE hModule;
VS_VERSION_INFO_STRUCT32* vvis = data;
+ if (flags)
+ {
+ FIXME("stub: %x %s %u %u %p\n", flags, wine_dbgstr_w(filename), handle, datasize, data);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
+ }
+
TRACE("(%s,%d,size=%d,data=%p)\n",
debugstr_w(filename), handle, datasize, data );
if ((magic == 1) && (hModule = LoadLibraryExW( filename, 0, LOAD_LIBRARY_AS_DATAFILE )))
{
HRSRC hRsrc = FindResourceW( hModule, MAKEINTRESOURCEW(VS_VERSION_INFO),
- MAKEINTRESOURCEW(VS_FILE_INFO) );
+ (LPWSTR)VS_FILE_INFO );
if (hRsrc)
{
HGLOBAL hMem = LoadResource( hModule, hRsrc );
}
/***********************************************************************
- * GetFileVersionInfoA [VERSION.@]
+ * GetFileVersionInfoExA [VERSION.@]
*/
-BOOL WINAPI GetFileVersionInfoA( LPCSTR filename, DWORD handle,
- DWORD datasize, LPVOID data )
+BOOL WINAPI GetFileVersionInfoExA( DWORD flags, LPCSTR filename, DWORD handle, DWORD datasize, LPVOID data )
{
UNICODE_STRING filenameW;
BOOL retval;
else
filenameW.Buffer = NULL;
- retval = GetFileVersionInfoW(filenameW.Buffer, handle, datasize, data);
+ retval = GetFileVersionInfoExW(flags, filenameW.Buffer, handle, datasize, data);
RtlFreeUnicodeString(&filenameW);
return retval;
}
+/***********************************************************************
+ * GetFileVersionInfoW [VERSION.@]
+ */
+BOOL WINAPI GetFileVersionInfoW( LPCWSTR filename, DWORD handle, DWORD datasize, LPVOID data )
+{
+ return GetFileVersionInfoExW(0, filename, handle, datasize, data);
+}
+
+/***********************************************************************
+ * GetFileVersionInfoA [VERSION.@]
+ */
+BOOL WINAPI GetFileVersionInfoA( LPCSTR filename, DWORD handle, DWORD datasize, LPVOID data )
+{
+ return GetFileVersionInfoExA(0, filename, handle, datasize, data);
+}
+
/***********************************************************************
* VersionInfo16_FindChild [internal]
*/
len = WideCharToMultiByte(CP_ACP, 0, *lplpBuffer, -1,
lpBufferA + pos, info->wLength - pos, NULL, NULL);
*lplpBuffer = lpBufferA + pos;
- *puLen = len;
+ if (puLen) *puLen = len;
}
return ret;
}
len = MultiByteToWideChar(CP_ACP, 0, *lplpBuffer, -1,
lpBufferW + pos, max/sizeof(WCHAR) - pos );
*lplpBuffer = lpBufferW + pos;
- *puLen = len;
+ if (puLen) *puLen = len;
}
return ret;
}
GetSystemDirectoryA(systemDir, sizeof(systemDir));
curDir = "";
- destDir = "";
if(flags & VFFF_ISSHAREDFILE)
{
GetSystemDirectoryW(systemDir, sizeof(systemDir)/sizeof(WCHAR));
curDir = &emptyW;
- destDir = &emptyW;
if(flags & VFFF_ISSHAREDFILE)
{
alloclen = 1000;
buf=HeapAlloc(GetProcessHeap(), 0, alloclen);
if(buf == NULL) {
- WARN("Memory exausted while fetching version info!\n");
+ WARN("Memory exhausted while fetching version info!\n");
return NULL;
}
while (1) {
HeapFree(GetProcessHeap(), 0, buf);
buf = HeapAlloc(GetProcessHeap(), 0, alloclen);
if(buf == NULL) {
- WARN("Memory exausted while fetching version info!\n");
+ WARN("Memory exhausted while fetching version info!\n");
return NULL;
}
} else {