.net .net-4.0

.net - ¿Qué significa "referencia se creó para el ensamblado de interoperabilidad incorporado"?



.net-4.0 (1)

Por el MSDN:

"Ha agregado una referencia a un ensamblaje (assembly1) que tiene la propiedad Insertar tipos de interoperabilidad configurada en Verdadero. Esto instruye al compilador a incrustar información de tipo de interoperabilidad de ese ensamblado. Sin embargo, el compilador no puede incrustar información de tipo de interoperabilidad de ese ensamblado porque otra El ensamblado al que ha hecho referencia (assembly2) también hace referencia a ese ensamblaje (assembly1) y tiene la propiedad Insertar tipos de interoperabilidad establecida en False. "

Para abordar esta advertencia

Para incrustar información de tipo de interoperabilidad para ambos ensamblajes, configure la propiedad Insertar tipos de interoperabilidad en todas las referencias al ensamblaje1 en Verdadero.

Esto significa que debe cambiar ''Insertar tipos de interoperabilidad = verdadero'' en System.Windows.Forms.dll

o

Para eliminar la advertencia, puede establecer la propiedad Insertar tipos de interoperabilidad del conjunto1 en Falso. En este caso, la información del tipo de interoperabilidad es proporcionada por un conjunto de interoperabilidad primario (PIA).

Recibo la siguiente advertencia:

Se creó una referencia al ensamblado de interoperabilidad incrustado c:/Program Files (x86)/Reference Assemblies/Microsoft/Framework/.NETFramework/v4.0/Accessibility.dll debido a una referencia indirecta a ese ensamblado creado por el ensamblado c:/Program Files (x86)/Reference Assemblies/Microsoft/Framework/.NETFramework/v4.0/System.Windows.Forms.dll . Considere cambiar la propiedad ''Incrustar tipos de interoperabilidad'' en cualquiera de los conjuntos.

Mi ensamblado contiene una referencia a Accessibility.dll y System.Windows.Forms.dll. ¿Por qué recibo esta advertencia?

Por cierto, Accessibility.dll tiene ''Incrustar Interop Types = true'', mientras que System.Windows.Forms.dll lo tiene configurado en falso.