Hello, Joe. You wrote Tuesday, January 17, 2012, 12:50:35:
>> For now I've just defined _WIN32_WINNT as 0x500, but not sure is >> it correct, and will my application works if it will be launched under >> Windows 9X. > This is the correct fix. Also, most modern Windows projects already > have the _WIN32_WINNT define set to something (e.g. 0x400, 0x500, etc). I have been thinking about what you said and decided, that there is inconsistency between checks that runs in compilation time and in runtime. As I understand if I'm not defining _WIN32_WINNT, I'm compiling for Windows 9X, so compilation check decides that there is no GetFullPathNameW() and set pointer for osGetFullPathNameW() to NULL. But when I run that executable in Windows XP, runtime check isNT() found that it is Windows NT based system, so it tried to call osGetFullPathNameW() instead osGetFullPathNameA(). I think that calling check IsNT() is not enough, there is need to check if osGetFullPathNameW() is valid pointer, and if it is not there fall back to !isNT() branch where osGetFullPathNameA() will be called. -- WBR, darkelf mailto:dark...@ukr.net _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users