home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1996 October / PCO_10.ISO / filesbbs / xphy2201.arj / ULOG.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1996-08-28  |  3.2 KB  |  89 lines

  1. { $Define Debug}
  2. {$Ifdef Debug}
  3. {$Else}
  4. {$d-}
  5. {$Endif}
  6.  
  7. { (C) Matthias Eube 1995 ─────────────────────────────────}
  8. { Kann in nichtkommerziellen Programmen weiterverwendet   }
  9. { werden, solange ich in der Dokumentation erwähnt werde  }
  10. { und der gesamte Quelltext des Programmes veröffentlich  }
  11. { wird. Es wäre nett mir zu schreiben. Adressen in der    }
  12. { Dokumentation. Verwendung auf eigene Gefahr!            }
  13. { Verbesserungen des Quelltextes Willkommen.              }
  14. { Veränderungen bitte in der in der Dokumentation         }
  15. { angebenen Art und Weise.                                }
  16. {─────────────────────────────────────────────────────────}
  17.  
  18. UNIT ULog;
  19. {─────────────────────────────────────────────────────────}
  20. { Beschreibung Unit:                                      }
  21. { Loggen einfach gemacht siehe Procedure Log              }
  22. {─────────────────────────────────────────────────────────}
  23. INTERFACE {───────────────────────────────────────────────}
  24. {─────────────────────────────────────────────────────────}
  25. Uses 
  26.   dos,Utimestr;
  27.  
  28. Const
  29.   BLogCon :Boolean=TRUE;           {Auf Bildschirm Loggen?}
  30.   BLogFile:Boolean=TRUE;           {In Datei Loggen?}
  31.   ILogIOResult:Integer=0;          {Letzer IO}
  32.  
  33. var
  34.   SLogFile:pathstr;                {Name der Logdatei}
  35.   SPrompt:STRING[80];        {Wird vor jedem Logeintrag geschrieben}
  36.  
  37. PROCEDURE LOG(S:String);
  38. {─────────────────────────────────────────────────────────}
  39. { Beschreibung :                                          }
  40. { Protokolliert den übergebenen String in der durch die   }
  41. { globale Variable SLogfile angegeben Datei wenn          }
  42. { die globale Variable BLogFile=True                      }
  43. { Zusätzlich wird wenn die globale Variable BLogCon=True  }
  44. { ist der Text auf dem Bildschirm ausgegeben              }
  45. {─────────────────────────────────────────────────────────}
  46.  
  47. {─────────────────────────────────────────────────────────}
  48. IMPLEMENTATION {──────────────────────────────────────────}
  49. {─────────────────────────────────────────────────────────}
  50. Uses xphytool;
  51.  
  52. PROCEDURE LOG(S:String);
  53. {─────────────────────────────────────────────────────────}
  54. { Beschreibung :                                          }
  55. { Protokolliert den übergebenen String in der durch die   }
  56. { globale Variable SLogfile angegeben Datei wenn          }
  57. { die globale Variable BLogFile=True                      }
  58. { Zusätzlich wird wenn die globale Variable BLogCon=True  }
  59. { ist der Text auf dem Bildschirm ausgegeben              }
  60. {─────────────────────────────────────────────────────────}
  61.  
  62. VAR 
  63.   F:TEXT;
  64. BEGIN {-Procedure-}
  65.   IF BLogCon then Writeln(S);
  66.   IF BLogFile then 
  67.     BEGIN
  68.       {$I-}
  69.       Assign(F, SLogFile);
  70.       If (NOT exist(SLogfile)) THEN
  71.         BEGIN
  72.        Rewrite(F);
  73.           Writeln(F,'; '+sprompt+'Log File');
  74.         Close(F);
  75.         END;
  76.       Append(F);
  77.       if s<>'' then Writeln(F,Date+' '+Time+' '+ S)
  78.                else writeln(f,s);
  79.       Close(F);
  80.       ILogIOResult:=IOResult;
  81.       {$I+}
  82.     END;
  83. END;  {-Procedure-}
  84. {─────────────────────────────────────────────────────────}
  85.  
  86.  
  87. {──────────Main UNIT──────────────────────────────────────}
  88. end.  {────Main UNIT──────────────────────────────────────}
  89.