Partilhar via


ResolveComReference task

Pega uma lista de um ou mais nomes de bibliotecas de tipos ou arquivos .tlb e resolve essas bibliotecas de tipos para locais no disco.

Parameters

A tabela a seguir descreve os parâmetros da tarefa ResolveCOMReference.

Parameter Description
DelaySign Parâmetro Boolean opcional.

Se true, coloca a chave pública no assembly. Se false, assina totalmente a assembleia.
EnvironmentVariables Parâmetro String[] opcional.

Matriz de pares de variáveis de ambiente, separadas por sinais de igual. Essas variáveis são passadas para o tlbimp.exe gerado e aximp.exe além de, ou substituindo seletivamente, o bloco de ambiente regular.
ExecuteAsTool Parâmetro Boolean opcional.

Se true, executa tlbimp.exe e aximp.exe a partir da estrutura de destino apropriada fora do proc para gerar os assemblies wrapper necessários. Este parâmetro permite a segmentação múltipla.
IncludeVersionInInteropName Parâmetro Boolean opcional.

Se true, a versão da biblioteca de tipos é incluída no nome do wrapper. A predefinição é false.
KeyContainer Parâmetro String opcional.

Especifica um contêiner que contém um par de chaves pública/privada.
KeyFile Parâmetro String opcional.

Especifica um item que contém um par de chaves pública/privada.
NoClassMembers Parâmetro Boolean opcional.
ResolvedAssemblyReferences Parâmetro de saída ITaskItem[] opcional.

Especifica as referências de assembly resolvidas.
ResolvedFiles Parâmetro de saída ITaskItem[] opcional.

Especifica os arquivos totalmente qualificados no disco que correspondem aos locais físicos das bibliotecas de tipos que foram fornecidas como entrada para esta tarefa.
ResolvedModules Parâmetro opcional ITaskItem[].
SdkToolsPath Parâmetro System.String opcional.

Se ExecuteAsTool for true, esse parâmetro deve ser definido como o caminho das ferramentas do SDK para a versão da estrutura que está sendo direcionada.
StateFile Parâmetro String opcional.

Especifica o arquivo de cache para carimbos de data/hora do componente COM. Se não estiver presente, cada execução regenera todos os invólucros.
TargetFrameworkVersion Parâmetro String opcional.

Especifica a versão da estrutura de destino do projeto.

A predefinição é String.Empty. o que significa que não há filtragem para uma referência baseada na estrutura de destino.
TargetProcessorArchitecture Parâmetro String opcional.

Especifica a arquitetura do processador de destino preferencial. Passado para o sinalizadortlbimp.exe/machine após a tradução.

O valor do parâmetro deve ser um membro do ProcessorArchitecture.
TypeLibFiles Parâmetro ITaskItem[] opcional.

Especifica o caminho do arquivo de biblioteca de tipos para referências COM. Os itens incluídos neste parâmetro podem conter metadados de itens. Para obter mais informações, consulte a seção Metadados do item TypeLibFiles.
TypeLibNames Parâmetro ITaskItem[] opcional.

Especifica os nomes da biblioteca de tipos a serem resolvidos. Os itens incluídos neste parâmetro devem conter alguns metadados do item. Para obter mais informações, consulte a seção Metadados do item TypeLibNames.
WrapperOutputDirectory Parâmetro String opcional.

O local no disco onde o assembly de interoperabilidade gerado é colocado. Se os metadados desse item não forem especificados, a tarefa usará o caminho absoluto do diretório onde o arquivo de projeto está localizado.

Metadados do item TypeLibNames

A tabela a seguir descreve os metadados de item disponíveis para itens passados para o TypeLibNames parâmetro.

Metadata Description
GUID Metadados de item necessários.

O GUID para a biblioteca de tipos. Se os metadados desse item não forem especificados, a tarefa falhará.
VersionMajor Metadados de item necessários.

A versão principal da biblioteca de tipos. Se os metadados desse item não forem especificados, a tarefa falhará.
VersionMinor Metadados de item necessários.

A versão secundária da biblioteca de tipos. Se os metadados desse item não forem especificados, a tarefa falhará.
EmbedInteropTypes Metadados opcionais Boolean .

Se true, incorpore os tipos de interoperabilidade dessa referência diretamente em seu assembly em vez de gerar uma DLL de interoperabilidade.
LocaleIdentifier Metadados opcionais do item.

O identificador de localidade (ou LCID) para a biblioteca de tipos. Esse identificador é especificado como um valor de 32 bits que identifica o idioma humano preferido por um usuário, região ou aplicativo. Se os metadados desse item não forem especificados, a tarefa usará um identificador de localidade padrão de "0".
WrapperTool Metadados opcionais do item.

Especifica a ferramenta wrapper usada para gerar o wrapper de assembly para essa biblioteca de tipos. Se os metadados desse item não forem especificados, a tarefa usará uma ferramenta de wrapper padrão de "tlbimp". As opções disponíveis, que não diferenciam maiúsculas de minúsculas, das bibliotecas de tipos são:

- Primary: Use esta ferramenta de wrapper quando quiser usar um assembly de interoperabilidade primária já gerado para o componente COM. Ao usar essa ferramenta de wrapper, não especifique um diretório de saída de wrapper porque isso faz com que a tarefa falhe.
- TLBImp: Use esta ferramenta de wrapper quando quiser gerar um assembly de interoperabilidade para o componente COM.
- PrimaryOrTLBImp: Use esta ferramenta de invólucro quando não tiver certeza se Primary é apropriado ou TLBImp não. A Primary lógica é aplicada primeiro, depois TLBImp.
- AXImp: Use esta ferramenta de wrapper quando quiser gerar um assembly de interoperabilidade para um controle ActiveX.

Metadados do item TypeLibFiles

A tabela a seguir descreve os metadados de item disponíveis para itens passados para o TypeLibFiles parâmetro.

Metadata Description
EmbedInteropTypes Parâmetro Boolean opcional.

Se true, incorpore os tipos de interoperabilidade dessa referência diretamente em seu assembly em vez de gerar uma DLL de interoperabilidade.
WrapperTool Metadados opcionais do item.

Especifica a ferramenta wrapper usada para gerar o wrapper de assembly para essa biblioteca de tipos. Se os metadados desse item não forem especificados, a tarefa usará uma ferramenta de wrapper padrão de "tlbimp". As opções disponíveis, que não diferenciam maiúsculas de minúsculas, das bibliotecas de tipos são:

- Primary: Use esta ferramenta de wrapper quando quiser usar um assembly de interoperabilidade primária já gerado para o componente COM. Ao usar essa ferramenta de wrapper, não especifique um diretório de saída de wrapper porque isso faz com que a tarefa falhe.
- TLBImp: Use esta ferramenta de wrapper quando quiser gerar um assembly de interoperabilidade para o componente COM.
- AXImp: Use esta ferramenta de wrapper quando quiser gerar um assembly de interoperabilidade para um controle ActiveX.

Note

Quanto mais informações você fornecer para identificar exclusivamente uma biblioteca de tipos, maior será a possibilidade de que a tarefa seja resolvida para o arquivo correto no disco.

Remarks

Além dos parâmetros listados neste artigo, esta tarefa herda parâmetros da Task classe. Para obter uma lista desses parâmetros adicionais e suas descrições, consulte Classe base de tarefa.

A DLL COM não precisa ser registrada na máquina para que essa tarefa funcione.

MSB4803 Error

Se você tentar executar um projeto que usa a ResolveCOMReference tarefa dos comandos da dotnet CLI, obterá o erro:

MSB4803: The task "ResolveComReference" is not supported on the .NET Core version of MSBuild. Please use the .NET Framework version of MSBuild.

Esta tarefa não é suportada na versão .NET Core do MSBuild, que é o que é usado quando você executa o dotnet build comando a partir da linha de comando. Tente criar o projeto invocando MSBuild.exe do prompt de comando do desenvolvedor do Visual Studio, já que esse executável usa a versão do .NET Framework do MSBuild.