16
DF General Discussion / Re: Embark Anywhere
« on: October 01, 2009, 08:48:29 am »
I discovered that if I compile it myself with MingW (GCC for windows more-or-less) it works perfectly. If I compile it with MSC8 or 9 it doesn't work.
This led me to fix the problem, with the hint from here http://msdn.microsoft.com/en-us/library/ms684880%28VS.85%29.aspx(see the text next to PROCESS_ALL_ACCESS).
Basically MS increased the size of the PROCESS_ALL_ACCESS flag in Vista so programs compiled on later operation systems (or presumably the later versions of the Windows SDK) are not backwards compatible. Cocking Microsoft
. Adding the following to hexsearch.c before including windows.h fixes the problem:
This led me to fix the problem, with the hint from here http://msdn.microsoft.com/en-us/library/ms684880%28VS.85%29.aspx(see the text next to PROCESS_ALL_ACCESS).
Basically MS increased the size of the PROCESS_ALL_ACCESS flag in Vista so programs compiled on later operation systems (or presumably the later versions of the Windows SDK) are not backwards compatible. Cocking Microsoft
. Adding the following to hexsearch.c before including windows.h fixes the problem:Code: [Select]
#define _WIN32_WINNT _WIN32_WINNT_WINXP // Use smaller, pre-Vista PROCESS_ALL_ACCESS flagor you can dick with the flags to find out what the minimum necessary combination is (READ/WRITE alone is insufficient).

