Compartir a través de


ResolveAssemblyReference (Tarea)

Determina todos los ensamblados que dependen de ensamblados especificados. Esto incluye dependencias de segundo y n-ésimo orden.

Parámetros

En la siguiente tabla se describen los parámetros de la tarea ResolveAssemblyReference.

Parámetro

Descripción

AllowedAssemblyExtensions

Parámetro String[] opcional.

Las extensiones de nombre de archivo de ensamblado que se utilizan al resolver las referencias. Las extensiones de nombre de archivo predeterminadas son .exe y .dll.

AllowedRelatedFileExtensions

Parámetro String[] opcional.

Las extensiones de nombre de archivo que se utilizan para una búsqueda de archivos relacionados entre sí. Las extensiones predeterminadas son .pdb y .xml.

AppConfigFile

Parámetro String opcional.

Especifica un archivo app.config del que analizar y extraer las asignaciones de bindingRedirect. Si se especifica este parámetro, el valor del parámetro AutoUnify deberá ser false.

AutoUnify

Parámetro Boolean opcional.

Este parámetro se utiliza para la compilación de ensamblados, como archivos DLL, que no pueden tener un archivo App.Config normal.

Si es true, el gráfico de dependencia resultante se trata automáticamente como si se hubiese pasado un archivo anApp.Config al parámetro AppConfigFile. Este archivo App.Config virtual dispone de una entrada bindingRedirect para cada conjunto de ensamblados en conflicto de modo que se elige el ensamblado de versión superior. Como consecuencia, nunca se emitirá ninguna advertencia sobre ensamblados en conflicto, puesto que se habrán resuelto todos.

Cuando es true, cada reasignación distinta dará como resultado un comentario de alta prioridad que muestra las versiones nuevas y antiguas y que AutoUnify era true.

Cuando es true, el parámetro AppConfigFile debe estar vacío

Si es false, no se realizará ninguna reasignación de versiones de ensamblado de forma automática. Cuando hay dos versiones de un ensamblado, se emite una advertencia.

Si es false, los distintos conflictos que se produzcan entre versiones diferentes del mismo ensamblado darán lugar a comentarios de alta prioridad. Estos comentarios van seguidos de una sola advertencia. La advertencia tiene un código de error único y contiene un texto que dice "Se han encontrado conflictos entre diferentes versiones de referencia y ensamblados dependientes".

Assemblies

Parámetro ITaskItem[] opcional.

Especifica los elementos para los que se deben identificar las rutas de acceso completas y las dependencias. Estos elementos pueden tener cualquier nombre simple como "Sistema" o nombres seguros como "Sistema, Versión=2.0.3500.0, Referencia cultural=neutral, PublicKeyToken=b77a5c561934e089."

Los elementos que se hayan pasado a este parámetro pueden incluir opcionalmente los siguientes metadatos de elemento:

  • Private: valor Boolean. Si es true, el elemento se copia localmente. El valor predeterminado es true.

  • HintPath: valor String. Especifica la ruta de acceso y nombre de archivo que se va a utilizar como una referencia. Se utiliza cuando{HintPathFromItem} se especifica en el parámetro SearchPaths. El valor predeterminado es una cadena vacía.

  • SpecificVersion: valor Boolean. Si es true, el nombre exacto especificado en el atributo Include debe coincidir. Si es false, servirá cualquier ensamblado con el mismo nombre simple. Si no se especifica SpecificVersion, la tarea examina el valor en el atributo Include del elemento. Si el atributo es un nombre simple, se comporta como si SpecificVersion fuera false. Si el atributo es un nombre seguro, se comporta como si SpecificVersion fuera true.

    Cuando se usa con un tipo de elemento de referencia, el atributo Include necesita ser el nombre completo de fusión del ensamblado que se va a resolver. Sólo se resuelve el ensamblado si la fusión coincide exactamente con el atributo Include.

    Cuando un proyecto se destina a una versión de .NET Framework y hace referencia a un ensamblado compilado para una versión posterior de .NET Framework, la referencia sólo se resuelve si tiene SpecificVersion establecido en true.

    Cuando un proyecto se destina a un perfil y hace referencia a un ensamblado que no está en el perfil, la referencia sólo se resuelve si tiene SpecificVersion establecido en true.

  • ExecutableExtension: valor String. Si está presente, el ensamblado resuelto debe tener esta extensión. En su ausencia, para cada directorio examinado se considerará la extensión .dll en primer lugar, seguida de la extensión .exe.

  • SubType: valor String. Solo los elementos con metadatos SubType vacíos se resolverán en rutas de acceso de ensamblado completas. Se omiten los elementos con metadatos SubType que contengan datos.

  • AssemblyFolderKey: valor String. Estos metadatos se admiten por cuestiones de compatibilidad. Especifica una clave del Registro definida por el usuario, como "hklm \VendorFolder", que Assemblies debería utilizar para resolver referencias de ensamblado.

AssemblyFiles

Parámetro ITaskItem[] opcional.

Especifica una lista de rutas de acceso completas a ensamblados para los que deben buscarse dependencias.

Los elementos que se hayan pasado a este parámetro pueden incluir opcionalmente los siguientes metadatos de elemento:

  • Private: un valor Boolean opcional. Si es true, el elemento se copia localmente.

  • FusionName: metadatos String opcionales. Especifica el nombre simple o seguro de este elemento. Si este atributo está presente se ahorra tiempo porque no es necesario abrir el archivo de ensamblado para obtener el nombre.

AutoUnify

Parámetro Boolean opcional.

Si es true, el gráfico de dependencia resultante se trata automáticamente como si se hubiese pasado un archivo App.Config al parámetro AppConfigFile. Este archivo App.Config virtual dispone de una entrada bindingRedirect para cada conjunto de ensamblados en conflicto de modo que se elige el ensamblado de versión superior. Como consecuencia, nunca se emitirá ninguna advertencia sobre ensamblados en conflicto, puesto que se habrán resuelto todos. Las distintas reasignaciones darán lugar a comentarios de alta prioridad donde se indiquen las versiones anteriores y las nuevas versiones, así como el hecho de que la operación se ha realizado automáticamente porque el parámetro AutoUnify era true.

Si es false, no se realizará ninguna reasignación de versiones de ensamblado de forma automática. Cuando haya dos versiones de un mismo ensamblado, se emitirá una advertencia. Los distintos conflictos que se produzcan entre versiones diferentes del mismo ensamblado darán lugar a comentarios de alta prioridad. Una vez que se hayan mostrado todos estos comentarios, se emitirá una única advertencia con un código de error único y un texto como el siguiente: "Se encontraron conflictos entre diferentes versiones de ensamblados de referencia y ensamblados dependientes".

El valor predeterminado es false.

CandidateAssemblyFiles

Parámetro String[] opcional.

Especifica una lista de ensamblados que deben utilizarse en el proceso de búsqueda y resolución. Los valores que se hayan pasado a este parámetro deberán ser nombres de archivo absolutos o nombres de archivo relativos al proyecto.

Los ensamblados de esta lista se tendrán en consideración cuando el parámetro SearchPaths contenga {CandidateAssemblyFiles} como una de las rutas de acceso que deben considerarse.

CopyLocalDependenciesWhenParentReferenceInGac

Parámetro [Boolean] opcional.

Si es true, para determinar si una dependencia debe copiarse localmente, una de las comprobaciones que se realizan es observar si la referencia primaria del archivo de proyecto tiene establecidos o no los metadatos privados. Si está configurado, el valor de Private se utiliza como una dependencia.

Si los metadatos no están establecidos, la dependencia pasa por las mismas comprobaciones que la referencia primaria. Una de estas comprobaciones consiste en ver si la referencia está en la GAC. Si hay una referencia en la GAC, no se copia localmente, porque se supone que está en la GAC en el equipo de destino. Esto solo se aplica a una referencia concreta y no a sus dependencias.

Por ejemplo, no se copia localmente una referencia en el archivo de proyecto que se encuentra en la GAC, pero sus dependencias se copian localmente porque no están en la GAC.

Si es false, se comprueban las referencias del archivo de proyecto para ver si están en la GAC, y se copian localmente según corresponda.

Las dependencias se comprueban para ver si están en la GAC y también se comprueban para ver si la referencia principal del archivo del proyecto está en la GAC.

Si la referencia primaria del archivo de proyecto se encuentra en la GAC, la dependencia no se copia localmente.

Si este parámetro es true o false, si hay varias referencias primarias y alguna de ellas no están en la GAC, entonces todas ellas se copian localmente.

CopyLocalFiles

Parámetro de salida de sólo lectura ITaskItem[] opcional.

Devuelve todos los archivos de los parámetros ResolvedFiles, ResolvedDependencyFiles, RelatedFiles, SatelliteFiles y ScatterFiles que incluyan metadatos del elemento CopyLocal con un valor true.

FilesWritten

Parámetro de salida ITaskItem[] opcional.

Contiene los elementos escritos en el disco.

FindDependencies

Parámetro Boolean opcional.

Si es true, se buscarán dependencias. De lo contrario, sólo se buscarán referencias primarias. El valor predeterminado es true.

FindRelatedFiles

Parámetro Boolean opcional.

Si es true, se buscarán archivos relacionados como, por ejemplo, archivos .pdb y archivos .xml. El valor predeterminado es true.

FindSatellites

Parámetro Boolean opcional.

Si es true, se buscarán ensamblados satélite. El valor predeterminado es true..

FindSerializationAssemblies

Parámetro Boolean opcional.

Si es true, la tarea busca los ensamblados de serialización. El valor predeterminado es true.

FullFrameworkAssemblyTables

Parámetro ITaskItem[] opcional.

Especifica elementos que tengan metadatos "FrameworkDirectory" para asociar una lista redist a un directorio de .NET Framework determinado. Si no se hace la asociación, se registrará un error. La lógica de resolución de referencias de ensamblado (RAR) utiliza el directorio de la versión de .NET Framework de destino si no está establecido un FrameworkDirectory.

FullFrameworkFolders

Parámetro [String][] opcional.

Especifica el conjunto de carpetas que contiene un directorio RedistList. Este directorio representa el marco completo de un perfil de cliente dado, por ejemplo, %programfiles%\reference assemblies\microsoft\framework\v4.0.

FullTargetFrameworkSubsetNames

Parámetro String[] opcional.

Contiene una lista de nombres del subconjunto de la versión de .NET Framework de destino. Si un nombre del subconjunto de la lista coincide con uno de la propiedad de nombre TargetFrameworkSubset, el sistema excluye ese subconjunto de la versión de .NET Framework de destino en tiempo de compilación.

IgnoreDefaultInstalledAssemblyTables

Parámetro Boolean opcional.

Si true, la tarea busca y utiliza tablas de ensamblados instalados adicionales (o "Redist Lists") que se encuentran en el directorio \RedistList bajo TargetFrameworkDirectories. El valor predeterminado es false..

IgnoreDefaultInstalledAssemblySubsetTables

Parámetro Boolean opcional.

Si true, la tarea busca y utiliza tablas de subconjuntos instalados adicionales (o "Subset Lists") que se encuentran en el directorio \SubsetList, bajo TargetFrameworkDirectories. El valor predeterminado es false..

InstalledAssemblySubsetTables

Parámetro ITaskItem[] opcional.

Contiene una lista de archivos XML que especifican los ensamblados que se espera que estén en el subconjunto de destino.

Como una opción, los elementos de esta lista pueden especificar los metadatos de "FrameworkDirectory" para asociar un InstalledAssemblySubsetTable

con un directorio de .NET Framework determinado.

Si solo hay un elemento TargetFrameworkDirectories, cualquier elemento de esta lista que no tenga los metadatos de "FrameworkDirectory" se trata como si estuviera establecidos en el único valor que se pasa a TargetFrameworkDirectories.

InstalledAssemblyTables

Parámetro String opcional.

Contiene una lista de archivos XML que especifican los ensamblados que se espera que estén instalados en el equipo de destino.

Cuando se establece InstalledAssemblyTables, las versiones anteriores de los ensamblados de la lista se combinan en las versiones más recientes que se enumeran en el XML. Asimismo, los ensamblados que tienen un valor InGAC='true' se consideran requisitos previos y se establecen en CopyLocal='false', a menos que se invaliden explícitamente.

Como opción, los elementos de esta lista pueden especificar los metadatos de "FrameworkDirectory" para asociar un InstalledAssemblyTable a un directorio de .NET Framework determinado. Sin embargo, este valor se omite a menos que Redist comience por

"Microsoft-Windows-CLRCoreComp".

Si solo hay un elemento TargetFrameworkDirectories, cualquier elemento de esta lista que no tenga los metadatos de "FrameworkDirectory" se trata como si estuviera establecido en el único valor que se pasa

a TargetFrameworkDirectories.

LatestTargetFrameworkDirectories

Parámetro String[] opcional.

Especifica una lista de directorios que contienen las listas redist de la versión de .NET Framework más actual que se puede usar como destino en el equipo. Si no está establecido, se usa la última versión de .NET Framework instalada en el equipo para un identificador de la versión de .NET Framework de destino.

ProfileName

Parámetro [String] opcional.

  • Especifica el nombre del perfil de la versión de .NET Framework de destino. Por ejemplo, cliente, web o red.

RelatedFiles

Parámetro de salida de sólo lectura ITaskItem[] opcional.

Contiene archivos relacionados como, por ejemplo, archivos XML y archivos .pdb, con el mismo nombre base como referencia.

Los archivos enumerados en este parámetro pueden contener opcionalmente los metadatos del elemento siguientes:

  • Primary: valor Boolean. Si es true, el elemento de archivo se pasó a la matriz utilizando el parámetro Assemblies. El valor predeterminado es false.

  • CopyLocal: valor Boolean. Indica si la referencia indicada debe copiarse en el directorio de resultados.

ResolvedDependencyFiles

Parámetro de salida de sólo lectura ITaskItem[] opcional.

Contiene las rutas de acceso de -ésimo orden a las dependencias. Este parámetro no contiene referencias principales de primer orden; éstas se incluyen en el parámetro ResolvedFiles.

Los elementos de este parámetro contienen opcionalmente los siguientes metadatos de elemento:

  • CopyLocal: valor Boolean. Indica si la referencia indicada debe copiarse en el directorio de resultados.

  • FusionName: valor String. Especifica el nombre de esta dependencia.

  • ResolvedFrom: valor String. Especifica la ruta de búsqueda literal a partir de la que se ha resuelto este archivo.

ResolvedFiles

Parámetro de salida de sólo lectura ITaskItem[] opcional.

Contiene una lista de todas las referencias principales que se han resuelto en rutas de acceso completas.

Los elementos de este parámetro contienen opcionalmente los siguientes metadatos de elemento:

  • CopyLocal: valor Boolean. Indica si la referencia indicada debe copiarse en el directorio de resultados.

  • FusionName: valor String. Especifica el nombre de esta dependencia.

  • ResolvedFrom: valor String. Especifica la ruta de búsqueda literal a partir de la que se ha resuelto este archivo.

SatelliteFiles

Parámetro de salida de sólo lectura ITaskItem[] opcional.

Especifica los archivos satélite encontrados. Serán CopyLocal=true si la referencia o dependencia que ha originado este elemento es CopyLocal=true.

Los elementos de este parámetro contienen opcionalmente los siguientes metadatos de elemento:

  • CopyLocal: valor Boolean. Indica si la referencia indicada debe copiarse en el directorio de resultados. Este valor es true si la referencia o dependencia que ha originado este elemento tiene un valor CopyLocal que es true.

  • DestinationSubDirectory: valor String. Especifica el directorio de destino relativo donde debe copiarse este elemento.

ScatterFiles

Parámetro de salida de sólo lectura ITaskItem[] opcional.

Contiene los archivos de dispersión asociados a uno de los ensamblados indicados.

Los elementos de este parámetro contienen opcionalmente los siguientes metadatos de elemento:

  • CopyLocal: valor Boolean. Indica si la referencia indicada debe copiarse en el directorio de resultados.

SearchPaths

Parámetro String[] requerido.

Especifica los directorios o ubicaciones especiales donde se van a buscar los archivos en disco que representen los ensamblados. El orden en que se muestran las rutas de búsqueda es importante. Para cada ensamblado, se realiza una búsqueda de izquierda a derecha en la lista de rutas de acceso. Cuando se encuentra un archivo que representa al ensamblado, la búsqueda actual se detiene y se inicia la búsqueda del siguiente ensamblado.

Este parámetro acepta los siguientes tipos de valores:

  • Una ruta de acceso a un directorio.

  • {HintPathFromItem}: especifica que la tarea examinará los metadatos HintPath del elemento base.

  • {CandidateAssemblyFiles}: especifica que la tarea examinará los archivos que se hayan pasado a través del parámetro CandidateAssemblyFiles.

  • {Registry:_AssemblyFoldersBase_, _RuntimeVersion_, _AssemblyFoldersSuffix_}:

  • {AssemblyFolders}: especifica que la tarea utilizará el esquema de búsqueda de ensamblados del Registro de Visual Studio .NET 2003.

  • {GAC}: especifica que la tarea realizará las búsquedas en la GAC.

  • {RawFileName}: especifica que la tarea considerará al valor Include del elemento como una ruta de acceso y un nombre de archivo exactos.

SerializationAssemblyFiles

Parámetro de salida de sólo lectura ITaskItem[] opcional.

Contiene los ensamblados de serialización XML encontrados. Estos elementos están marcados con CopyLocal=true si y solo si la referencia o dependencia que hizo que existiera este elemento es CopyLocal=true.

Los metadatos Boolean CopyLocal indican si la referencia especificada debe copiarse en el directorio de resultados.

Silent

Parámetro Boolean opcional.

Si es true, no se registra ningún mensaje. El valor predeterminado es false.

StateFile

Parámetro String opcional.

Especifica un nombre de archivo que indica dónde debe guardarse el estado de compilación intermedio de esta tarea.

SuggestedRedirects

Parámetro de salida de sólo lectura ITaskItem[] opcional.

Contiene un elemento para cada una de las distintas identidades de ensamblados en conflicto, independientemente del valor del parámetro AutoUnify. Se incluyen las referencias culturales y PKT encontrados que no dispongan de una entrada bindingRedirect apropiada en el archivo de configuración de la aplicación.

Cada elemento contiene opcionalmente la siguiente información:

  • El atributo Include: contiene el nombre completo de la familia de ensamblados con un valor de 0.0.0.0 para el campo Version.

  • Metadatos del elemento MaxVersion: contiene el número de versión máximo.

TargetedRuntimeVersion

Parámetro String opcional.

Especifica la versión del runtime de destino, por ejemplo, 2.0.57027 o v2.0.57027.

TargetFrameworkDirectories

Parámetro String[] opcional.

Especifica la ruta de acceso del directorio de la versión de .NET Framework de destino. Este parámetro es necesario para poder determinar el estado de CopyLocal de los elementos resultantes.

Si no se especifica este parámetro, ninguno de los elementos resultantes tendrá un valor true para CopyLocal, a menos que el valor de los metadatos Private sea explícitamente true en su elemento origen.

TargetFrameworkMoniker

Parámetro String opcional.

El TargetFrameworkMoniker que se desea supervisar, si existe. Se utiliza para iniciar sesión.

TargetFrameworkMonikerDisplayName

Parámetro String opcional.

El nombre para mostrar del TargetFrameworkMoniker para supervisar, si lo hay. Se utiliza para iniciar sesión.

TargetFrameworkSubsets

Parámetro String[] opcional.

Contiene una lista de nombres del subconjunto de la versión .NET Framework de destino que se va a buscar en los directorios de la versión de .NET Framework de destino.

TargetFrameworkVersion

Parámetro String opcional.

La versión de .NET Framework de destino del proyecto. El valor predeterminado está vacío, lo que significa no hay ningún filtrado para las referencias basadas en la versión de .NET Framework de destino.

TargetProcessorArchitecture

Parámetro String opcional.

Arquitectura preferida del procesador de destino. Se utiliza para resolver referencias de la Caché global de ensamblados (GAC).

El valor de este parámetro puede ser x86, IA64 o AMD64.

Si no está este parámetro, la tarea considera en primer lugar los ensamblados que coinciden con la arquitectura del proceso que se está ejecutando. Si no se encuentra ningún ensamblado, la tarea considera los ensamblados de GAC con un valor ProcessorArchitecture de MSIL o sin valor ProcessorArchitecture.

Comentarios

Además de los parámetros mencionados anteriormente, esta tarea hereda los parámetros de la clase TaskExtension, que hereda de la clase Task. Para obtener una lista de estos parámetros adicionales y sus descripciones, vea TaskExtension (Clase base).

Vea también

Conceptos

Tareas de MSBuild

Otros recursos

Referencia de tareas de MSBuild