Compartilhar via


ResolveComReference task

Usa uma lista de um ou mais nomes de biblioteca 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 de Boolean opcional.

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

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

Se true, executará tlbimp.exe e aximp.exe da estrutura de destino apropriada para gerar os assemblies de wrapper necessários. Esse parâmetro habilita o direcionamento múltiplo.
IncludeVersionInInteropName Parâmetro de Boolean opcional.

Se true, a versão da biblioteca de tipos será incluída no nome do wrapper. O padrão é false.
KeyContainer Parâmetro de String opcional.

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

Especifica um item que contém um par de chaves pública/privada.
NoClassMembers Parâmetro de 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 fornecidos como entrada para essa tarefa.
ResolvedModules Parâmetro opcional ITaskItem[].
SdkToolsPath Parâmetro de System.String opcional.

Se ExecuteAsTool for, esse parâmetro deve ser definido como o caminho das ferramentas do SDK para a versão da estrutura que está truesendo direcionada.
StateFile Parâmetro de 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 wrappers.
TargetFrameworkVersion Parâmetro de String opcional.

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

O padrão é String.Empty. o que significa que não há filtragem para uma referência com base na estrutura de destino.
TargetProcessorArchitecture Parâmetro de String opcional.

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

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

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

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

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

Metadados de 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 esses metadados de item não forem especificados, a tarefa falhará.
VersionMajor Metadados de item necessários.

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

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

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

O Identificador de Localidade (ou LCID) da biblioteca de tipos. Esse identificador é especificado como um valor de 32 bits que identifica a linguagem humana preferida por um usuário, região ou aplicativo. Se esses metadados de item não forem especificados, a tarefa usará um identificador de localidade padrão de "0".
WrapperTool Metadados de item opcionais.

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

- Primary: use essa ferramenta de wrapper quando quiser usar um assembly de interoperabilidade primário 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 essa ferramenta de wrapper quando quiser gerar um assembly de interoperabilidade para o componente COM.
- PrimaryOrTLBImp: use essa ferramenta de wrapper quando você não tiver certeza se Primary é apropriado ou TLBImp não. A Primary lógica é aplicada primeiro, depois TLBImp.
- AXImp: use essa ferramenta de wrapper quando quiser gerar um assembly de interoperabilidade para um Controle ActiveX.

Metadados de 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 de Boolean opcional.

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

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

- Primary: use essa ferramenta de wrapper quando quiser usar um assembly de interoperabilidade primário 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 essa ferramenta de wrapper quando quiser gerar um assembly de interoperabilidade para o componente COM.
- AXImp: use essa 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 a possibilidade de que a tarefa seja resolvida para o arquivo correto no disco.

Remarks

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

A DLL COM não precisa ser registrada no computador para que essa tarefa funcione.

MSB4803 Error

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

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

Essa tarefa não tem suporte na versão do .NET Core do MSBuild, que é usada quando você executa o dotnet build comando na linha de comando. Tente criar o projeto invocando MSBuild.exe do Prompt de Comando do Desenvolvedor do Visual Studio, pois esse executável usa a versão do .NET Framework do MSBuild.