2009-01-12 14 views
47

Ich habe einen Verweis auf die log4net assembly dll zu meinem Projekt hinzugefügt.VS2005: Assembly '<assembly>' ist falsch als Datei angegeben.

Wenn ich baue ich eine Warnung sagen:

Warnung Assembly 'Lib \ log4net.dll' ist fälschlicherweise als Datei angegeben.

Ich sehe die help for this error on MSDN, und es sagt:

Diese Warnung während Anwendung manifestieren Generation erzeugt wird, wenn der Build-Prozess erkennt, dass eine Datei Referenz tatsächlich a (verwaltet oder native) Assembly.

Genau das mache ich; Die Dateireferenz ist eine Baugruppe. Was wird mir hier gesagt?

Wie kann ich einen Verweis auf eine Assembly DLL hinzufügen, die zwar nicht einen Verweis auf eine Assembly DLL hinzufügen?

+0

Können Sie den Abschnitt für die Log4Net DLL aus Ihrer CSPROJ Datei schreiben? – Millhouse

Antwort

6

ich in dieses Problem selbst ausgeführt wurde.

Dies ist, was für mich gearbeitet:

Ich hatte eine Baugruppe als Referenz und als zusätzliche „bestehende Ressource.“ Löschen der Datei aus dem Projektmappen-Explorer, Schließen und erneutes Öffnen des Projekts

88

Versuchen Sie, die Action Eigenschaft der Quelle DLLs Keine Einstellung. Es hat das Problem für uns gelöst.

+1

Wir haben unsere log4net.dll auf Root-Ebene im WinForms-Projekt. Ich folgte Ihrem Rat und setzte die Build Action auf "None". Dann fügte ich die Datei als Referenz hinzu und konnte das Projekt erfolgreich mit ClickOnce erstellen und veröffentlichen. – proudgeekdad

+5

Für diejenigen, die nicht von wo -> Klicken Sie mit der rechten Maustaste auf die DLL-Datei -> Eigenschaften -> Wählen Sie "Keine" aus dem Menü Aktion erstellen. – usefulBee

+1

Das führt dazu, dass der Fehler verschwindet, aber es führt zu einem ganz anderen Problem bei der Bereitstellung der Anwendung - die Dateien mit der Build-Aktion 'None' werden nicht mit dem Rest des Projekts bereitgestellt ... –