9 Stimmen

Problem bei der Registrierung einer dll - Zugriff verweigert

Wenn Sie versuchen, regasm in Win2008 Server auszuführen:

regasm "C:\Program Files\FooProg\Bar.dll" /tlb:"C:\Program Files\FooProg\Bar.tlb"

Ich erhalte den folgenden Fehler:

RegAsm : Fehler RA0000 : Ein Fehler ist beim Speichern der exportierten Typbibliothek: Der Zugriff wurde verweigert. (Ausnahme von HRESULT: 0x80070005 (E_ACCESSDENIED))

Was bedeutet das?

13voto

Dominik Ras Punkte 501

Dieser Fehler tritt höchstwahrscheinlich auf, weil Sie eine entsprechende .tlb-Datei nicht löschen können. Zwei weitere Vorschläge:

  1. Beenden Sie IIS und versuchen Sie erneut, sich zu registrieren:
  2. Beenden Sie IIS, entfernen Sie die .tlb-Dateien von dem Ort, an dem sich Ihre DLL-Datei befindet, und versuchen Sie dann erneut, sich zu registrieren.
  3. Schließen Sie alle IE/IIS/DEV-Tools (sie könnten einige Dateien im schreibgeschützten Zustand halten) und versuchen Sie dann, Ihre DLL zu registrieren

11voto

sharptooth Punkte 162790

Das Konto, unter dem Sie regasm ausführen, hat keine Schreibrechte für C:\Program Dateien \FooProg\ und das ist der Grund, warum regasm die .tlb nicht schreiben kann. Führen Sie regasm unter einem Konto mit Administratorrechten aus.

3voto

Shiva Punkte 39

In meinem Fall waren sowohl die .dll- als auch die .tlb-Datei ReadOnly. Das Entfernen der ReadOnly-Prüfung hat bei mir funktioniert, außerdem habe ich den Prozess geschlossen, der die Datei verwendet hat (Visual Studio IDE).

3voto

scottm Punkte 27163

Das Konto, das Sie verwenden, muss über Administratorrechte verfügen.

2voto

Bei mir wurde die Datei von einer anderen Anwendung verwendet

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X