Ich führe IIS 6.0 unter Windows 2003 aus und beginne diesen Fehler zu bekommen:
Compiler Error Message: CS0016: Could not write to output file 'c:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\root82c13f\ea9b3ff7\App_global.asax.zodyof_q.dll' -- 'The directory name is invalid. '
Ich habe alle Berechtigungen überprüft und alles ist so, wie es sein muss - und die Fehlermeldung erwähnt keine Berechtigungen. Ich habe schon folgendes versucht:
c:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\root
, dann Ausführen von iisreset
c:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\root
, dann Ausführen von iisreset
c:\WINDOWS\TEMP
, dann Ausführen von iisreset
. Irgendwelche Vorschläge?
Weitere Anmerkungen / Antworten:
Ich habe eine Antwort gefunden, die anwendbar ist, wenn Sie den ANTS-Profiler installiert haben und dieser beim Profiling abgestürzt ist. Dieser KB-Artikel beschreibt einen von die Lösungen:
Ссылка \ ANTS_Profiler \ KB200903000362.htm
%SystemRoot%
und nennen Sie ihn dann Temp
. %SystemRoot%\TEMP
in das Feld Wert ein und klicken Sie dann auf OK. Geben Sie zum Zurücksetzen der Internetinformationsdienste (IIS) in der Eingabeaufforderung iisreset ein.
Verwenden Sie SysInternals FileMon (oder ProcMon, wenn Sie möchten), um die echte Datei zu sehen, über die es sich lustig macht. Sie können es auf die Überwachung von IIS beschränken, wenn Sie einen ausgelasteten Server haben, obwohl ich mit allen Prozessen beginnen und nur ein paar Sekunden der Ausgabe erfassen würde.
Stellen Sie vor dem Ausführen sicher, dass IIS mithilfe von iisreset / restart zurückgesetzt wurde, sodass der Fehler nicht zuvor zwischengespeichert wurde.
Ryan
Ich hatte denselben Fehler bei der Ausführung von IIS 7.0 / Vista Ultimate / .NET 2.0 Web App. Ich habe versucht, "Vollzugriff" Berechtigungen für temporäre Ordner für NETWORK SERVICE Benutzer (mit der rechten Maustaste auf Ordner c:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727
, Eigenschaften, Registerkarte Sicherheit) und Deaktivieren von Antivirus und UAC, aber es hat nicht geholfen.
Aber das funktionierte wie Magie: Open IIS Manager - & gt; Wählen Sie "Anwendungspools anzeigen" aus dem rechten Menü - & gt; Wählen Sie "Erweiterte Einstellungen" - & gt; Setzen Sie Ihren Benutzernamen (und Ihr Passwort) in der Eigenschaft "Identität" - & gt; Starten Sie IIS neu
Falls dies nicht funktioniert, überprüfen Sie zusätzlich, ob Sie Eigentümer des c:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727
-Ordners sind (rechte Maustaste, Eigenschaften, Registerkarte Sicherheit, Erweitert, Registerkarte Besitzer)
Sie müssen versuchen, zu deaktivieren Windows-Indexdienst für den temporären asp.net-Ordner"
Ich habe den gleichen Fehler erhalten. Die Antivirus- / Sicherheitssoftware (McAffee Viruscan Enterprise) verhinderte, dass das Visual Studio-Tool csc.exe Code dynamisch kompilierte und die Entity-Datenmodell-DLL im Verzeichnisordner oberhalb des Windows-Verzeichnisordners erstellte. In McAffee gibt es einen Abschnitt namens access protection, der eine Regel namens Maximum Protection enthält, die das Erstellen von ausführbaren Dateien im Windows-Verzeichnis-Ordner verbietet. Deaktivieren Sie einfach vorübergehend die Regel oder den Zugriffsschutz, um die Website erfolgreich zu kompilieren.
Hier ist die endgültige Lösung :)
Geben Sie zunächst dem ASPNET-Konto, dem NETWORK SERVICE-Konto die Berechtigung für den Ordner "ASP.NET Temporary files" unter dem von ihm verwendeten Framework.
wie C: \ windows \ microsoft.net \ framework \ v2.xxx \ ASP.NET Temporäre Dateien.
Überprüfen Sie den temporären Ordner, der für Ihren Computer unter Umgebungsvariablen für TEMP und TEMP konfiguriert ist. Für diesen Ordner geben Sie auch alle Berechtigungen für ASPNET Account, NETWORK SERVICE accout. Setzen Sie den IIS zurück Es sollte gut funktionieren.
Von Windows Server 2003 x64, IIS6, net 4.0, ASP-Anwendung wurde mir der Fehler angezeigt:
Compiler-Fehlermeldung: CS0016: Konnte nicht in die Ausgabedatei 'c: \ WINDOWS \ Microsoft.NET \ Framework64 \ v2.0.50727 \ Temporäre ASP.NET-Dateien \ root \ 7382c13f \ ea9b3ff7 \ App_global.asax.zodyof_q.dll schreiben '-' Der Verzeichnisname ist ungültig. "
Es wurde gelöst, als ich das DIR
erstellted: \ temp
Keine Ahnung, warum D: \ temp wichtig war, aber ich werde diese Antwort mit einem Grund aktualisieren, sobald ich weiß.
Berechtigungen auf dem DIR waren:
Administrator voll
Creator Owner special
System voll
Benutzer lesen & amp; execute / list / read
Es wurde keine IIS-spezifische Benutzerberechtigung definiert.
Arbeitet, um zum IIS7-Host zu migrieren, aber dachte, dass diese Antwort für jemanden hilfreich sein könnte.
Tags und Links asp.net iis asp.net-2.0 temporary-asp.net-files