Index: freexp/fxpbhelp.pas
===================================================================
RCS file: /server/cvs/freexp/fxpbhelp.pas,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- freexp/fxpbhelp.pas 2 Jan 2006 12:28:50 -0000       1.2
+++ freexp/fxpbhelp.pas 2 Apr 2006 13:51:14 -0000       1.3
@@ -6,7 +6,7 @@
 { Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
 { Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html.   }
 { --------------------------------------------------------------- }
-{ $Id: fxpbhelp.pas,v 1.2 2006/01/02 12:28:50 mw Exp $ }
+{ $Id: fxpbhelp.pas,v 1.3 2006/04/02 13:51:14 mw Exp $ }
 
 { FreeXP - BuildHelper }
 
@@ -14,7 +14,7 @@
 
 program fxpbhelp;
 
-uses dos,xpglobal;
+uses dos,xpglobal,timemark,dosx;
 
 procedure logo;
 begin
@@ -26,11 +26,13 @@
 end;
 
 begin
+ StandardIO;
  logo;
  if paramcount<>1 then halt;
  if paramstr(1)='OVR' then begin
       writeln ('OVR-TESTING');
       {$IFDEF USEOVR}
+      setmark('XP.OVR');
       halt(10);
       {$ELSE}
       halt;
@@ -40,6 +42,11 @@
 end.
 {
 $Log: fxpbhelp.pas,v $
+Revision 1.3  2006/04/02 13:51:14  mw
+MW: - Zeitstempel von XP.OVr wird nicht mehr aus dem Verzeichnis
+      entnommen sondern aus einer 8 Byte großen Zeitsignatur am
+      Dateiende.
+
 Revision 1.2  2006/01/02 12:28:50  mw
 MW: - Frohes neues Jahr 2006
 
Index: freexp/ihs.pas
===================================================================
RCS file: /server/cvs/freexp/ihs.pas,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- freexp/ihs.pas      13 Jan 2006 19:11:21 -0000      1.17
+++ freexp/ihs.pas      2 Apr 2006 12:51:36 -0000       1.18
@@ -15,11 +15,11 @@
 {      1.3  (c) 01/2003 FreeXP }
 {      1.4  (c) 01/2006 FreeXP }
 
-{ $Id: ihs.pas,v 1.17 2006/01/13 19:11:21 mw Exp $ }
+{ $Id: ihs.pas,v 1.18 2006/04/02 12:51:36 mw Exp $ }
 
 {$R-,S-}
 
-uses crt,dos,typeform,fileio,xpglobal;
+uses crt,dos,typeform,fileio,xpglobal,dosx;
 
 const maxpages = 4096;
       version  = '1.4';
@@ -346,6 +346,7 @@
 
 begin
   clrscr;
+  StandardIO;
   writeln('Intelligent Help System Rel. '+version);
   writeln('(c) 1989-1999 Peter Mandrella, '+x_copyright+' '+xp_display);
   writeln;
@@ -409,6 +410,9 @@
 }
 {
    $Log: ihs.pas,v $
+   Revision 1.18  2006/04/02 12:51:36  mw
+   MW: - RC und IHS benutzen jetzt StandardIO statt StandardError;
+
    Revision 1.17  2006/01/13 19:11:21  mw
    MW: - IHS.EXE unterstützt jetzt als zweiten Parameter einen
          Ausgabepfad.
Index: freexp/rc.pas
===================================================================
RCS file: /server/cvs/freexp/rc.pas,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- freexp/rc.pas       2 Jan 2006 12:28:50 -0000       1.16
+++ freexp/rc.pas       2 Apr 2006 12:51:36 -0000       1.17
@@ -8,11 +8,11 @@
 { Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html.   }
 { --------------------------------------------------------------- }
 { Ressourcen-Compiler }
-{ $Id: rc.pas,v 1.16 2006/01/02 12:28:50 mw Exp $ }
+{ $Id: rc.pas,v 1.17 2006/04/02 12:51:36 mw Exp $ }
 
 {$I XPDEFINE.INC }
 
-uses  crt,dos,typeform,fileio,xpglobal;
+uses  crt,dos,typeform,fileio,xpglobal,dosx;
 
 const open   : boolean = false;
       maxblk  = 4;                  { max. 4 Ressourcen-Segmente }
@@ -308,6 +308,7 @@
 
 begin
   clrscr;
+  StandardIO;
   writeln('Resource Compiler v'+version);
   writeln('(c) 1992-1999 Peter Mandrella, '+x_copyright+' '+xp_display);
   writeln;
@@ -325,6 +326,9 @@
 
 {
   $Log: rc.pas,v $
+  Revision 1.17  2006/04/02 12:51:36  mw
+  MW: - RC und IHS benutzen jetzt StandardIO statt StandardError;
+
   Revision 1.16  2006/01/02 12:28:50  mw
   MW: - Frohes neues Jahr 2006
 
Index: freexp/timemark.pas
===================================================================
RCS file: freexp/timemark.pas
diff -N freexp/timemark.pas
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ freexp/timemark.pas 2 Apr 2006 13:51:14 -0000       1.1
@@ -0,0 +1,100 @@
+{ --------------------------------------------------------------- }
+{ Dieser Quelltext ist urheberrechtlich geschuetzt.               }
+{ (c) 2006      FreeXP, http://www.freexp.de                      }
+{ CrossPoint ist eine eingetragene Marke von Peter Mandrella.     }
+{                                                                 }
+{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
+{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html.   }
+{ --------------------------------------------------------------- }
+{ $Id: timemark.pas,v 1.1 2006/04/02 13:51:14 mw Exp $ }
+
+{$I XPDEFINE.INC }
+
+unit timemark;
+
+interface
+
+procedure setmark(fl:string);
+function getmark(fl:string):longint;
+
+implementation
+
+uses compdate,fileio,dos;
+
+type tmark = record
+       sig1,sig2,sig3,sig4: byte;
+       mark: longint;
+     end;
+
+var rmark : tmark;
+    res:integer;
+
+function complong:longint;
+var dt:datetime;
+    code:integer;
+    ft:longint;
+begin
+  if comp_YY='0000' then complong:=0
+  else begin
+    Val(comp_YY,dt.year,code);
+    Val(comp_MO,dt.Month,code);
+    Val(comp_DD,dt.Day,code);
+    Val(comp_HH,dt.Hour,code);
+    Val(comp_MI,dt.Min,code);
+    Val(comp_SS,dt.Sec,code);
+    Packtime(dt,ft);
+    complong:=ft;
+  end;
+end;
+
+procedure setmark(fl:string);
+var f:file;
+    size:longint;
+begin
+  rmark.sig1:=$46;
+  rmark.sig2:=$58;
+  rmark.sig3:=$50;
+  rmark.sig4:=$0;
+  rmark.mark:=complong;
+  if rmark.mark=0 then exit;
+  {$I-}
+  assign(f,fl);
+  reset(f,1);
+  {$I+}
+  if ioresult <>0 then exit;
+  size:=filesize(f);
+  seek(f,size);
+  blockwrite(f,rmark,sizeof(rmark),res);
+  close(f);
+end;
+
+function getmark(fl:string):longint;
+var f:file;
+    size:longint;
+begin
+  fm_ro;
+  {$I-}
+  assign(f,fl);
+  reset(f,1);
+  {$I+}
+  fm_rw;
+  if ioresult <>0 then exit;
+  size:=filesize(f);
+  seek(f,size-sizeof(tmark));
+  blockread(f,rmark,sizeof(rmark),res);
+  if res<>sizeof(tmark) then exit;
+  if ioresult<>0 then exit;
+  if (rmark.sig1=$46) and (rmark.sig2=$58) and (rmark.sig3=$50) and 
(rmark.sig4=$0) then
+    getmark:=rmark.mark else getmark:=0;
+end;
+
+begin
+end.
+{
+  $Log: timemark.pas,v $
+  Revision 1.1  2006/04/02 13:51:14  mw
+  MW: - Zeitstempel von XP.OVr wird nicht mehr aus dem Verzeichnis
+        entnommen sondern aus einer 8 Byte großen Zeitsignatur am
+        Dateiende.
+
+}
\ No newline at end of file
Index: freexp/xpx.pas
===================================================================
RCS file: /server/cvs/freexp/xpx.pas,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- freexp/xpx.pas      28 Mar 2006 09:15:02 -0000      1.39
+++ freexp/xpx.pas      2 Apr 2006 13:51:14 -0000       1.40
@@ -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.39 2006/03/28 09:15:02 mw Exp $ }
+{ $Id: xpx.pas,v 1.40 2006/04/02 13:51:14 mw Exp $ }
 
 { CrossPoint - First Unit }
 
@@ -19,7 +19,7 @@
 interface
 
 uses
-  ems, xms, overxms, crt, 
dos,dosx,typeform,fileio,mouse,inout,xp0,crc,xpglobal, mcb,compdate;
+  ems, xms, overxms, crt, 
dos,dosx,typeform,fileio,mouse,inout,xp0,crc,xpglobal, mcb,compdate,timemark;
 
 implementation
 
@@ -109,12 +109,21 @@
   end;
 end;
 
+function ovrdate:longint;
+var t:longint;
+
+begin
+  t:=getmark(Progname+'.ovr');
+  if t=0 then t:=filetime(Progname+'.ovr');
+  ovrdate:=t;
+end;  
+
 procedure TestOVR;
 var c,cc : char;
 begin
   if not exist(Progname+'.ovr') then
     stop('Die Datei '+Progname+'.OVR fehlt!');
-  if (complong<>0) and (abs(complong-filetime(Progname+'.ovr'))>=60) then begin
+  if (complong<>0) and (abs(complong-ovrdate)>=60) then begin
     writeln;
     writeln('WARNUNG: Das Dateidatum von '+Progname+'.OVR stimmt nicht mit dem 
von '+Progname+'.EXE');
     writeln('         überein. '+Progname+'.OVR stammt offenbar von einer 
anderen '+xp_display+'-');
@@ -378,6 +387,11 @@
 
 {
   $Log: xpx.pas,v $
+  Revision 1.40  2006/04/02 13:51:14  mw
+  MW: - Zeitstempel von XP.OVr wird nicht mehr aus dem Verzeichnis
+        entnommen sondern aus einer 8 Byte großen Zeitsignatur am
+        Dateiende.
+
   Revision 1.39  2006/03/28 09:15:02  mw
   MW: - Overlaytest benutzt jetzt das in der Compdate-Unit hinterlegte
         Datum. Workaround gegen Fehlverhalten von Windows XP.
Index: freexp/build/DOS16/build.bat
===================================================================
RCS file: /server/cvs/freexp/build/DOS16/build.bat,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- freexp/build/DOS16/build.bat        28 Mar 2006 15:14:11 -0000      1.42
+++ freexp/build/DOS16/build.bat        2 Apr 2006 13:40:45 -0000       1.43
@@ -1,5 +1,5 @@
 @ECHO OFF
-:REM $Id: build.bat,v 1.42 2006/03/28 15:14:11 mw Exp $
+:REM $Id: build.bat,v 1.43 2006/04/02 13:40:45 mw Exp $
 :REM
 :REM ╔══════════ BUILD.BAT ═════════════════════════════════════════════════╗
 :REM ║                                                                      ║
@@ -152,8 +152,6 @@
 
 %BP_PATH%\BPC.EXE %BP_OPT% -EBUILD\DOS16\XPDIR TOUCH
 IF ERRORLEVEL 1 GOTO FEHLER_1
-%BP_PATH%\BPC.EXE %BP_OPT% -EBUILD\DOS16\XPDIR FXPBHELP
-IF ERRORLEVEL 1 GOTO FEHLER_1
 
 :REM Standard-COMPDATE sichern
 IF EXIST compdate.pas IF NOT EXIST compdate.pa$ REN compdate.pas compdate.pa$
@@ -162,6 +160,10 @@
 GENDATE.EXE
 DEL GENDATE.EXE
 
+:REM Build-Helper erstellen
+%BP_PATH%\BPC.EXE %BP_OPT% -EBUILD\DOS16\XPDIR FXPBHELP
+IF ERRORLEVEL 1 GOTO FEHLER_1
+
 ECHO.
 ECHO ┌────────────────────────────────────────────────────────────────────────┐
 ECHO │ Schritt 3: FreeXP compilieren ...                                      │
@@ -437,6 +439,9 @@
 
 {
   $Log: build.bat,v $
+  Revision 1.43  2006/04/02 13:40:45  mw
+  MW: - Helper wird nach Erstellen von COMPDATE erstellt.
+
   Revision 1.42  2006/03/28 15:14:11  mw
   MW: - Datei mime.typ wird jetzt auch eingepackt.
 

------------------------------------------------------------------------
FreeXP CVS-Mailingliste
CVS-List@freexp.de
http://www.freexp.de/cgi-bin/mailman/listinfo/cvs-list

Antwort per Email an