Icon View Thread

The following is the text of the current message along with any replies.
Messages 11 to 11 of 11 total
Thread Edbsrvr in Windows 2008 Server x64
Mon, May 10 2010 4:16 PMPermanent Link

George

Tim:

I will deal with SysUtils.pas the next time I create or modifiy a new
external module.  Thanks for providing below for starters.  Right now, I am
busy with the server migration and updates from dbIsam to ElevateDB and also
discovering all the new goodies in ElevateDB.

George Patena




<< "Tim Young [Elevate Software]  wrote in message
news:5CA4DE0B-AC28-4090-BB3C-CC4CA89363E8@news.elevatesoft.com...

Just in case you want to know the cause of the DEP issue, it is caused by
the way the locales are populated.   In SysUtils.pas:
constructor TLanguages.Create;
type
 TCallbackThunk = packed record
   POPEDX: Byte;
   MOVEAX: Byte;
   SelfPtr: Pointer;
   PUSHEAX: Byte;
   PUSHEDX: Byte;
   JMP: Byte;
   JmpOffset: Integer;
 end;
var
 Callback: TCallbackThunk;
begin
 inherited Create;
 Callback.POPEDX := $5A;
 Callback.MOVEAX := $B8;
 Callback.SelfPtr := Self;
 Callback.PUSHEAX := $50;
 Callback.PUSHEDX := $52;
 Callback.JMP     := $E9;
 Callback.JmpOffset := Integer(@TLanguages.LocalesCallback) -
Integer(@Callback.JMP) - 5;
 EnumSystemLocales(TFNLocaleEnumProc(@Callback), LCID_SUPPORTED);
end;

It's the way that they're doing the callback that DEP doesn't like because
they're treating code as data.

Unfortunately, to work around it you have to use your own locale population
code, etc.
>>

« Previous PagePage 2 of 2
Jump to Page:  1 2
Image