Index: freexp/fileio.pas =================================================================== RCS file: /server/cvs/freexp/fileio.pas,v retrieving revision 1.53 retrieving revision 1.54 diff -u -r1.53 -r1.54 --- freexp/fileio.pas 1 Jan 2005 11:16:27 -0000 1.53 +++ freexp/fileio.pas 13 Nov 2005 10:06:00 -0000 1.54 @@ -8,7 +8,7 @@ { Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der } { Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. } { --------------------------------------------------------------- } -{ $Id: fileio.pas,v 1.53 2005/01/01 11:16:27 mw Exp $ } +{ $Id: fileio.pas,v 1.54 2005/11/13 10:06:00 mw Exp $ } { File-I/O, Locking und Dateinamenbearbeitung } @@ -69,6 +69,8 @@ procedure resetfm(var f:file; fm:byte); { mit spez. Filemode öffn.} function FileLock(var datei:file; from,size:longint):boolean; procedure FileUnLock(var datei:file; from,size:longint); +function XPLock:boolean; +procedure XPUnlock; procedure addext(var fn:pathstr; const ext:extstr); procedure adddir(var fn:pathstr; dir:dirstr); @@ -86,7 +88,7 @@ implementation { ------------------------------------------------------- } uses - xp0,clip; + xp0,clip,overlay; const PathSepaChar = ';'; @@ -626,6 +628,46 @@ end; end; +function XPLock:boolean; +var + regs : registers; + from,size: longint; + +begin + from:=0; + size:=_filesize(Progname+'.exe'); + if shareda then + with regs do + begin + ax:=$5c00; + bx:=OvrDosHandle; + cx:=from shr 16; dx:=from and $ffff; + si:=size shr 16; di:=size and $ffff; + msdos(regs); + XPLock:=flags and fcarry = 0; + end else + XPLock:=true; +end; + +procedure XPUnlock; +var + regs : registers; + from,size: longint; + +begin + from:=0; + size:=_filesize(Progname+'.exe'); + if shareda then + with regs do + begin + ax:=$5c01; + bx:=OvrDosHandle; + cx:=from shr 16; dx:=from and $ffff; + si:=size shr 16; di:=size and $ffff; + msdos(regs); + end; +end; + (* procedure TestShare; var @@ -841,6 +883,9 @@ end. { $Log: fileio.pas,v $ + Revision 1.54 2005/11/13 10:06:00 mw + MW: - Einbau der Möglichkeit die Programmdatei zu locken/unlocken. + Revision 1.53 2005/01/01 11:16:27 mw MW: - Willkommen im Jahr 2005 Index: freexp/xpx.pas =================================================================== RCS file: /server/cvs/freexp/xpx.pas,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- freexp/xpx.pas 1 Jan 2005 11:16:31 -0000 1.31 +++ freexp/xpx.pas 13 Nov 2005 10:06:00 -0000 1.32 @@ -8,7 +8,7 @@ { Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der } { Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. } { --------------------------------------------------------------- } -{ $Id: xpx.pas,v 1.31 2005/01/01 11:16:31 mw Exp $ } +{ $Id: xpx.pas,v 1.32 2005/11/13 10:06:00 mw Exp $ } { CrossPoint - First Unit } @@ -300,7 +300,7 @@ { Bei integriertem OVR mⁿssen wir nicht testen !!} { TestOVR; } OvrInit(Progname+'.exe'); - + XPUnlock; {Lightweight-Readpar} noovrbuf:=false; for i:=1 to paramcount do begin @@ -357,6 +357,9 @@ { $Log: xpx.pas,v $ + Revision 1.32 2005/11/13 10:06:00 mw + MW: - Einbau der Möglichkeit die Programmdatei zu locken/unlocken. + Revision 1.31 2005/01/01 11:16:31 mw MW: - Willkommen im Jahr 2005 Index: freexp/doc/snapshot.dq =================================================================== RCS file: /server/cvs/freexp/doc/snapshot.dq,v retrieving revision 1.57 retrieving revision 1.58 diff -u -r1.57 -r1.58 --- freexp/doc/snapshot.dq 11 Nov 2005 14:36:17 -0000 1.57 +++ freexp/doc/snapshot.dq 13 Nov 2005 10:11:09 -0000 1.58 @@ -268,15 +268,18 @@ % % -%Snapshot vom xx.xx.200x, xx:xx Uhr +%Snapshot vom 13.11.2005, 11:15 Uhr %---------------------------------- -A. Snapshot vom xx.xx.200x, xx:xx Uhr +A. Snapshot vom 13.11.2005, 11:15 Uhr --------------------------------------- -■ xx.xx.200x +■ 13.11.2005 ------------- -xx: -%* xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx - xxx.xxx, xxxx.xxx, xx.xxx +MW: +%# Entsperren der Programmdatei um Tools den Zugriff auf die +% XP.EXE zu erlauben. +- Um Programmen den Lesezugriff auf die XP.EXE zu erlauben, welche + die XP.EXE unnötigerweise für Schreibzugriffe öffnen wollen + wird die Programmdatei jetzt entsperrt. + fileio.pas, xpx.pas
------------------------------------------------------------------------ FreeXP CVS-Mailingliste CVS-List@freexp.de http://www.freexp.de/cgi-bin/mailman/listinfo/cvs-list