Update of /server/cvs/freexp In directory m6s15:/tmp/cvs-serv14246 Modified Files: xp_ntvdm.pas file_id.diz clip.pas Log Message: MW: - Korrekturen im Bereich Timezone/Windows.
--- /server/cvs/freexp/xp_ntvdm.pas 2009/05/03 16:00:41 1.16 +++ /server/cvs/freexp/xp_ntvdm.pas 2009/05/10 09:59:22 1.17 @@ -7,7 +7,7 @@ { Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der } { Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. } { --------------------------------------------------------------- } -{ $Id: xp_ntvdm.pas,v 1.16 2009/05/03 16:00:41 mw Exp $ } +{ $Id: xp_ntvdm.pas,v 1.17 2009/05/10 09:59:22 mw Exp $ } {$R xp_ntvdm.rc} @@ -34,7 +34,7 @@ { procedure setCL(para:UCHAR); external 'ntvdm.exe'; } function getCL:UCHAR; external 'ntvdm.exe'; { procedure setCH(para:UCHAR); external 'ntvdm.exe'; } function getCH:UCHAR; external 'ntvdm.exe'; - procedure setEDX(para:ULONG); external 'ntvdm.exe'; { function getEDX:ULONG; external 'ntvdm.exe'; } +{ procedure setEDX(para:ULONG); external 'ntvdm.exe'; } { function getEDX:ULONG; external 'ntvdm.exe'; } { procedure setDX(para:USHORT); external 'ntvdm.exe'; } function getDX:USHORT; external 'ntvdm.exe'; { procedure setDH(para:UCHAR); external 'ntvdm.exe'; } { function getDH:UCHAR; external 'ntvdm.exe'; } { procedure setDL(para:UCHAR); external 'ntvdm.exe'; } { function getDL:UCHAR; external 'ntvdm.exe'; } @@ -316,34 +316,49 @@ { --- GetTimeZone ---------------------------------------------- } -procedure GetTimeZone; +procedure GetTimeZone1; var TZ : TTimeZoneInformation; - minutes : integer; mode: integer; begin mode:=0; - minutes:=0; case GetTimeZoneInformation(TZ) of TIME_ZONE_ID_UNKNOWN : begin mode:=0; - minutes:=TZ.Bias; end; TIME_ZONE_ID_STANDARD: begin mode:=0; - minutes:=TZ.StandardBias; end; TIME_ZONE_ID_DAYLIGHT: begin mode:=1; - minutes:=TZ.DaylightBias; end; end; setEAX(mode); - setEDX(minutes); end; +procedure GetTimeZone2; +var TZ : TTimeZoneInformation; + minutes : integer; +begin + minutes:=0; + case GetTimeZoneInformation(TZ) of + TIME_ZONE_ID_UNKNOWN : + begin + minutes:=TZ.Bias; + end; + TIME_ZONE_ID_STANDARD: + begin + minutes:=TZ.Bias + TZ.StandardBias; + end; + TIME_ZONE_ID_DAYLIGHT: + begin + minutes:=TZ.Bias + TZ.DaylightBias; + end; + end; + setEAX(minutes); +end; { --- VDD calls ------------------------------------------------- } @@ -353,7 +368,8 @@ {Versionsinfos} $0000: get_windows_version; {Windows NT Version bestimmen} $0001: XP_NTVDM_VER; {Revision der XP_NTVDM.DLL bestimmen} - $0002: GetTimeZone; {Timezone aus Windows 2000/XP/Server 2003/7 (nur XPM) bestimmen} + $0002: GetTimeZone1; {Timezone aus Windows 2000/XP/Server 2003/7 (nur XPM) bestimmen} + $0003: GetTimeZone2; {Timezone aus Windows 2000/XP/Server 2003/7 (nur XPM) bestimmen} {Clipboardfunktionen} $0101: clip_to_string; {einen String aus der Zwischenablage lesen} @@ -387,7 +403,10 @@ { $Log: xp_ntvdm.pas,v $ - Revision 1.16 2009/05/03 16:00:41 mw + Revision 1.17 2009/05/10 09:59:22 mw + MW: - Korrekturen im Bereich Timezone/Windows. + + Revision 1.16 2009-05-03 16:00:41 mw MW: - FreeXP 3.41 Release Revision 1.15 2008-12-26 18:37:18 mw --- /server/cvs/freexp/file_id.diz 2005/12/04 09:08:51 1.10 +++ /server/cvs/freexp/file_id.diz 2009/05/10 09:59:22 1.11 @@ -1,32 +1,21 @@ ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» -º FreeXP v3.40 RC4 (Komplettpaket) º +º FreeXP v3.41 (Komplettpaket) º ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ -º Release-Candidate 4 vom 31.10.2005 º +º Release vom 10.05.2009 º ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ -º Die erste "echte" FreeXP-Release º -º ist im kommen. Nach langem Warten º -º ist es jetzt so weit: º -º Der erste echte Release-Candidate º -º zur Version 3.40 ist da. º -º Nach dieser letzten Testversion º -º erfolgt zeitnah die Release noch º -º in diesem Jahr. º +º Die zweite "echte" FreeXP-Release º +º ist da. º º ---------------------------------- º -º (c) 2005 by FreeXP www.freexp.de º +º (c) 2009 by FreeXP www.freexp.de º ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» -º FreeXP v3.40 RC4 (Full package) º +º FreeXP v3.41 (Full package) º ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ -º Release Candidate 4 of 31.10.2005 º +º Release of 10.05.2009 º ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ -º The first "true" FreeXP release º -º is on its way. After a long wait, º -º this is how things stand: º -º This is v3.40 Release Candidate 4 º -º and after this latest test version,º -º a release may well follow later º -º this year. º +º The second "true" FreeXP release º +º is here. º º ---------------------------------- º -º (c) 2005 by FreeXP www.freexp.de º +º (c) 2009 by FreeXP www.freexp.de º ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ --- /server/cvs/freexp/clip.pas 2009/05/03 16:00:42 1.43 +++ /server/cvs/freexp/clip.pas 2009/05/10 09:59:22 1.44 @@ -8,7 +8,7 @@ { Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der } { Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. } { --------------------------------------------------------------- } -{ $Id: clip.pas,v 1.43 2009/05/03 16:00:42 mw Exp $ } +{ $Id: clip.pas,v 1.44 2009/05/10 09:59:22 mw Exp $ } {$I XPDEFINE.INC } {$O+,F+} @@ -200,15 +200,18 @@ var mode:smallint; var minutes:smallint; - procedure Loadtimezone;assembler; + function Loadtimezone1:longint;assembler; asm mov dx,$0002 mov ax,ntvdm_handle db $c4,$c4,$58,2 - db $66 { 32 bit prefix } - mov mode,ax - db $66 { 32 bit prefix } - mov minutes,dx + end; + + function Loadtimezone2:longint;assembler; + asm + mov dx,$0003 + mov ax,ntvdm_handle + db $c4,$c4,$58,2 end; function makeTZ(sw:char;tzdiff:longint):string; @@ -220,11 +223,13 @@ end; begin + {Nur bei Windows NT 5.x moeglich} if ((WinVersion=4) and (Lo(WinNTVersion)=5)) then begin - Loadtimezone; {NTVDM aufrufen} - hour:=minutes div 60; - hour:=hour mod 24; + mode:=Loadtimezone1; {NTVDM aufrufen} + minutes:=Loadtimezone2; {NTVDM aufrufen} + hour:=-(minutes div 60); + {hour:=hour mod 24;} if (mode=0) then tzone:=makeTZ('W',hour) else @@ -871,7 +876,10 @@ end. { $Log: clip.pas,v $ - Revision 1.43 2009/05/03 16:00:42 mw + Revision 1.44 2009/05/10 09:59:22 mw + MW: - Korrekturen im Bereich Timezone/Windows. + + Revision 1.43 2009-05-03 16:00:42 mw MW: - FreeXP 3.41 Release Revision 1.42 2008-12-26 18:37:11 mw
------------------------------------------------------------------------ FreeXP CVS-Mailingliste CVS-List@freexp.de http://www.freexp.de/cgi-bin/mailman/listinfo/cvs-list