NT sets the error code to ERROR_RESOURCE_DATA_NOT_FOUND if the file
exists but does not contain version information.

diff --git a/dlls/version/info.c b/dlls/version/info.c
index 662a22e..2b4fbfd 100644
--- a/dlls/version/info.c
+++ b/dlls/version/info.c
@@ -440,11 +440,19 @@
 
     len = VERSION_GetFileVersionInfo_PE(filename, handle, 0, NULL);
     /* 0xFFFFFFFF means: file exists, but VERSION_INFO not found */
-    if(len == 0xFFFFFFFF) return 0;
+    if(len == 0xFFFFFFFF)
+    {
+        SetLastError(ERROR_RESOURCE_DATA_NOT_FOUND);
+        return 0;
+    }
     if(len) return len;
     len = VERSION_GetFileVersionInfo_16(filename, handle, 0, NULL);
     /* 0xFFFFFFFF means: file exists, but VERSION_INFO not found */
-    if(len == 0xFFFFFFFF) return 0;
+    if(len == 0xFFFFFFFF)
+    {
+        SetLastError(ERROR_RESOURCE_DATA_NOT_FOUND);
+        return 0;
+    }
     if(len) return len;
 
     len = GetFileResourceSize16( filename,