* builds/windows/ftsystem.c (FT_Stream_Open): Support legacy Windows.
diff --git a/builds/windows/ftsystem.c b/builds/windows/ftsystem.c
index ac1d2e7..65c37aa 100644
--- a/builds/windows/ftsystem.c
+++ b/builds/windows/ftsystem.c
@@ -226,7 +226,15 @@
       return FT_THROW( Cannot_Open_Resource );
     }
 
+#if defined _WIN32_WCE || defined _WIN32_WINDOWS || \
+    (defined _WIN32_WINNT && _WIN32_WINNT <= 0x0400)
+    /* Use GetFileSize() for legacy Windows */
+    size.u.LowPart = GetFileSize( file, (DWORD *)&size.u.HighPart );
+    if ( size.u.LowPart == INVALID_FILE_SIZE && GetLastError() != NO_ERROR )
+#else
+    /* Use GetFileSizeEx() for modern Windows */
     if ( GetFileSizeEx( file, &size ) == FALSE )
+#endif
     {
       FT_ERROR(( "FT_Stream_Open:" ));
       FT_ERROR(( " could not retrieve size of file `%s'\n", filepathname ));