AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dienst und Pfadangaben

Ein Thema von amigage · begonnen am 19. Dez 2017 · letzter Beitrag vom 19. Dez 2017
 
amigage

Registriert seit: 11. Nov 2005
Ort: Leipzig
270 Beiträge
 
Delphi 11 Alexandria
 
#1

Dienst und Pfadangaben

  Alt 19. Dez 2017, 14:49
Hallo,

das Problem mit dem Erstellen von Schattenkopien über einen Dienst konnte ich lösen.

Jetzt stellt sich aber ein Problem mit den ermittelten Pfadangaben.
Und zwar möchte ich eine Logdatei anlegen lassen, in der die verschiedenen Aktivitäten protokolliert werden sollen.

Delphi-Quellcode:
const
  cMyServiceLog = 'MyService\MyService.log';

procedure TMyService.Log(LogText: String);
begin
  sLogPath := GetEnvironmentVariable('LOCALAPPDATA') + '\' + cMyServiceLog;
//System.IOUtils.TFile.AppendAllText('C:\Users\amigage\AppData\Local\MyService\log.log', DateTimeToStr(Now) + ' ' + sLogPath + sLineBreak); // spätere zweite Logdatei
  if not DirectoryExists(ExtractFilePath(sLogPath)) then
    ForceDirectories(ExtractFilePath(sLogPath));

  System.IOUtils.TFile.AppendAllText(sLogPath, DateTimeToStr(Now) + ' ' + LogText + sLineBreak)
end;
Ich erhalte nur eine Meldung, nachdem der Service installiert wurde, die anderen EventsLogs werden ignoriert.

Delphi-Quellcode:
procedure TMyService.ServiceCreate(Sender: TObject);
begin
  Log('BFU Service created');
end;
Also habe ich eine LogDatei für die Variable sLogPath angelegt (Kommentar bei Funktion Log() entfernen).
Und siehe da, hier finden sich ganz seltsame Pfadangaben.
Code:
19.12.2017 15:09:22 C:\Users\amigage\AppData\Local\MyService\MyService.log
19.12.2017 15:09:28 C:\WINDOWS\system32\config\systemprofile\AppData\Local\MyService\MyService.log
19.12.2017 15:09:28 C:\WINDOWS\system32\config\systemprofile\AppData\Local\MyService\MyService.log
19.12.2017 15:13:50 C:\WINDOWS\system32\config\systemprofile\AppData\Local\MyService\MyService.log
Warum ist das so? Ist das ein Bug oder kann ich hier nicht die gewohnten Funktionen GetEnvironmentVariable() und System.IOUtils.TPath.Combine() anwenden?
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz