Ich verwende NLog zum ersten Mal auf einem Projekt. Ich möchte mich in eine Datei einloggen, also habe ich eine Zielbeschreibung zu fileName = "$ {basedir}/logs/$ {shortdate} .log" hinzugefügt. Dies erstellt/hängt Protokollinformationen an eine Datei in MyApplicationFolder/Logs/2009-06-08.log an.
Die Protokollierung funktioniert auf einem Windows XP-Computer im Debug-Modus und bei der Bereitstellung mit meinem MSI-Installationsprogramm einwandfrei.
Wenn ich jedoch auf einem Vista-Computer bereitstellen, wird nichts in der Datei protokolliert. Ich habe versucht, ein MessageBox-Ziel hinzuzufügen, nur um zu überprüfen, ob die Vista-Bereitstellung mit der NLog-DLL überhaupt kommuniziert hat oder ob es Probleme mit der Konfigurationsdatei gab - und das funktioniert, also nehme ich an, dass dies speziell mit dem Erstellen eines Ordners getan werden muss und/oder Erstellen/Schreiben einer Datei in C:/Program Files (x86).
Kann mir jemand helfen zu sehen, was ich nicht richtig mache?NLog schreibt nicht in Datei auf Vista-Bereitstellung
0
A
Antwort
1
Vista verwendet Files System Virtualisation, um einige Ordner zu schützen. So wurden Ihre Logs geschrieben, aber still in einen anderen Ordner.
Danke, das tut es. Zusammenfassend wird die Protokolldatei geschrieben, aber anstatt nach C:/Programme (x86)/MyApplicationFolder/zu gehen, geht sie in Vista zu C:/Benutzer/JohnDoe/AppData/Local/VirtualStore/Programmdateien (x86))/ etc... – Mathias