Der Fehler, den Sie bekommen ist wahrscheinlich aufgrund der Tatsache, dass ein normaler Benutzer keine Berechtigung, Ordner oder Dateien hat unter dem „C zu erstellen: \ Program Files (x86) \ " Verzeichnis. Dies ist absichtlich, weil ein normaler Benutzer nicht in dieses Verzeichnis schreiben sollte.
Anwendungen werden unterhalb dieses Verzeichnisses von einem Benutzer mit Administratorberechtigung oder einem Benutzer mit erhöhten Berechtigungen installiert. Ihre Anwendung sollte Protokolldateien an einen Speicherort unterhalb des Profilverzeichnisses des Benutzers schreiben, z. irgendwo unter "% appdata%".
Ich arbeite in einer IT-Abteilung, wo wir schlecht geschriebene Hersteller-Software unterstützen müssen, die Dateien irgendwo unterhalb des Verzeichnisses% programfiles% aktualisieren müssen, und es ist ein absoluter Albtraum. Wir möchten nicht, dass unsere Benutzer generell die Erlaubnis haben, in diesen Ordner zu schreiben, da dies potenziell bösartige Software - Viren usw. - ermöglichen könnte, unsere Anwendungen heimlich zu verändern. Allerdings müssen wir Ausnahmen in unserer Virensoftware machen und ständig besondere Sicherheit für die Ordner für diese abweichende Anwendung, auf die leider unser Geschäft angewiesen ist, pflegen. Der Punkt der Geschichte ist: Tu es nicht. Es ist eine schlechte Übung, und Ihre Kunden werden nicht glücklich sein.
könnte auch sein, dass der Vorarb hat Zugriff nicht Ordner/Dateien in Programmdateien – lordkain
„als Administrator ausführen“ erstellen oder schreibe das Protokoll irgendwo e lse, weil ProgramFiles nicht zum Loggen dient. –
Das Schreiben in diese Verzeichnisse ist nur mit erhöhten Rechten möglich. Sie sollten diese Protokolldateien lieber in den appdata-Ordner schreiben. –