meta data for this page
  •  

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

log-datei [2011/06/02 09:33] (aktuell)
Zeile 1: Zeile 1:
 +====== Log-Datei erzeugen ======
 +\\  Mitunter ist es bei der Entwicklung von Skripten nicht sinnvoll oder möglich, sich während der Ausführung mit FF_MessageBox einzelne Werte anzeigen zu lassen. In diesem Fall können die zu überwachenden Werte stattdessen in eine Log-Datei geschrieben werden, z.B. mit dieser Prozedur:\\ \\  JScript: (VBScript siehe weiter unten)\\ ​
 +  Meldung = "Das ist eine Logging-Info";​
  
 +  Log (2, Meldung,"",""​); ​   // die Datei wird erzeugt bzw. ergänzt
 +                             // es werden der Zeitstempel und die Meldung geschrieben
 +
 +  function Log(Parameter,​ t1, t2, t3)
 +  {
 +  // ***************************************************************************************
 +  // * schreibt bis zu drei Werte t1 bis t3 in die Textdatei ff_testlog.txt im Scriptordner
 +  // * mehrere Werte werden durch Semikolon voneinander getrennt und
 +  // * in einer Zeile dargestellt,​
 +  // * optional wird eine Zeile mit Datum und Uhrzeit voran gestellt
 +  // * Parameter wird durch Addition folgender Werte gebildet:
 +  // *     0 - vorhandene Datei ergänzen bzw. Datei neu erstellen
 +  // *     1 - ggf. vorhandene Datei löschen und neu erstellen
 +  // *     2 - Zeitstempel einfügen
 +  // **************************************************************************************
 +
 +      var tf,Werte;
 +      ForAppending = 8;
 +      var Logdatei;
 +      Logdatei = FF_GetFFPathEx(2) +"​\\ff_testlog.txt";​
 +      if( typeof(fso) == "​undefined"​ )
 +        fso = new ActiveXObject("​Scripting.FileSystemObject"​);​
 +
 +      if( (Parameter == 1) || (Parameter == 3) ) //Datei löschen
 +       if( fso.FileExists(Logdatei) )
 +           ​fso.DeleteFile(Logdatei);​
 +
 +      if( (Parameter == 2) ||  (Parameter == 3) ) // mit Zeitstempel
 +      {
 +          var D=new Date();
 +          Werte = "----- " + D.toLocaleDateString() + " " + D.toLocaleTimeString() + " -----\r\n";​
 +      }
 +      if( t1 != ""​) Werte = Werte + t1;
 +      if( t2 != ""​) Werte = Werte + "; " + t2;
 +      if( t3 != ""​) Werte = Werte + "; " + t3;
 +
 +      if( !fso.FileExists(Logdatei) )
 +      {
 +       tf = fso.CreateTextFile(Logdatei,​ true);
 +       ​tf.Close();​
 +      }
 +
 +      tf = fso.OpenTextFile(Logdatei,​ ForAppending,​ true);
 +      tf.WriteLine(Werte);​
 +      tf.Close();
 +  } // End Sub
 +
 +   
 +\\  VBScript:​\\ ​
 +  Meldung = "Das ist eine Logging-Info"​
 +  Call Log (2, Meldung,"",""​) ​    '​ die Datei wird erzeugt bzw. ergänzt
 +                                  ' es werden der Zeitstempel und die Meldung geschrieben
 +
 +  Sub Log(Parameter,​ t1, t2, t3)
 +      ' ***************************************************************************************
 +      ' * schreibt bis zu drei Werte t1 bis t3 in die Textdatei ff_testlog.txt im Scriptordner
 +      ' * mehrere Werte werden durch Semikolon voneinander getrennt und
 +      ' * in einer Zeile dargestellt,​
 +      ' * optional wird eine Zeile mit Datum und Uhrzeit voran gestellt
 +      ' * Parameter wird durch Addition folgender Werte gebildet:
 +      ' *     0 - vorhandene Datei ergänzen bzw. Datei neu erstellen
 +      ' *     1 - ggf. vorhandene Datei löschen und neu erstellen
 +      ' *     2 - Zeitstempel einfügen
 +      ' **************************************************************************************
 +
 +      Dim fso, tf
 +      Dim Werte
 +      Const ForAppending = 8
 +      Dim Logdatei
 +      Logdatei = FF_GetFFPathEx(2) & "​\ff_testlog.txt"​
 +
 +      set fso = CreateObject("​Scripting.FileSystemObject"​)
 +
 +      if Parameter = 1 or  Parameter = 3 Then            ' Datei löschen
 +          If (fso.FileExists(Logdatei)) Then
 +              fso.DeleteFile(Logdatei)
 +          End If
 +      End If
 +      if Parameter = 2 or Parameter = 3 Then             '​ mit Zeitstempel
 +          Werte = "----- " & Date & " - " & Time & " -----" & vbNewLine
 +      End If
 +
 +      if t1 <> ""​ then Werte = Werte & t1
 +      if t2 <> ""​ then Werte = Werte & "; " & t2
 +      if t3 <> ""​ then Werte = Werte & "; " & t3
 +
 +      If not (fso.FileExists(Logdatei)) Then
 +          Set tf = fso.CreateTextFile(Logdatei,​ True)
 +          tf.Close
 +      End If
 +
 +      Set tf = fso.OpenTextFile(Logdatei,​ ForAppending,​ True)
 +      tf.WriteLine(Werte)
 +      tf.Close
 +  End Sub
 +
 +