2009-01-12 10 views
47

He agregado una referencia al log4net assembly dll a mi proyecto.VS2005: El ensamblaje '<assembly>' está incorrectamente especificado como un archivo.

Cuando construyo recibo una advertencia diciendo:

Advertencia Asamblea 'Lib \ log4net.dll' es especificado incorrectamente como un archivo.

Miro hacia arriba el help for this error on MSDN, y dice: se genera

Esta advertencia durante aplicación de generación de manifiesto cuando el proceso de construcción detecta que una referencia de archivo es en realidad un (administrado o nativo) ensamblaje.

Esto es exactamente lo que estoy haciendo; la referencia de archivo es un conjunto. ¿Qué me dicen aquí?

¿Cómo agrego una referencia a un dll de ensamblaje, sin agregar una referencia a un dll de ensamblaje?

+0

¿Se puede publicar la sección para la dll de Log4Net desde su archivo .csproj? – Millhouse

Respuesta

6

Me encontré con este problema yo mismo.

Esto es lo que funcionó para mí:

había añadido un conjunto como una referencia y como un "recurso existente." Eliminar el archivo del Explorador de soluciones, cerrar y luego volver a abrir el proyecto funcionó.

88

Intente establecer la propiedad de Acción de compilación de los archivos DLL de origen en Ninguno. Solucionó el problema para nosotros.

+1

Tenemos nuestro log4net.dll en el nivel raíz en el proyecto WinForms. Seguí tu consejo y configuré la Acción de compilación en "Ninguno". Luego agregué el archivo como referencia y pude construir y publicar el proyecto con éxito usando ClickOnce. – proudgeekdad

+5

Para aquellos que no lo hacen desde donde -> Haga clic con el botón derecho en el archivo dll -> Propiedades -> Seleccione "Ninguno" en el menú Acción de compilación. – usefulBee

+1

Esto hace que el error desaparezca, pero presenta un problema completamente diferente al implementar la aplicación: los archivos con la acción de compilación 'None' no se implementarán con el resto del proyecto ... –

Cuestiones relacionadas