Condividi tramite


ResolveComReference task

Accetta un elenco di uno o più nomi di libreria dei tipi o file con estensione tlb e risolve tali librerie di tipi in percorsi su disco.

Parameters

Nella tabella seguente vengono descritti i parametri dell'attività ResolveCOMReference.

Parameter Description
DelaySign Parametro Boolean facoltativo.

Se true, inserisce la chiave pubblica nell'assembly. Se false, firma completamente l'assembly.
EnvironmentVariables Parametro String[] facoltativo.

Matrice di coppie di variabili di ambiente, separate da segni di uguale. Queste variabili vengono passate al tlbimp.exe generato e aximp.exe oltre a, o eseguendo l'override selettivo, del normale blocco di ambiente.
ExecuteAsTool Parametro Boolean facoltativo.

Se true, esegue tlbimp.exe e aximp.exe dal framework di destinazione appropriato out-of-proc per generare gli assembly wrapper necessari. Questo parametro abilita il multitargeting.
IncludeVersionInInteropName Parametro Boolean facoltativo.

Se true, la versione della libreria dei tipi è inclusa nel nome del wrapper. Il valore predefinito è false.
KeyContainer Parametro String facoltativo.

Specifica un contenitore che contiene una coppia di chiavi pubblica/privata.
KeyFile Parametro String facoltativo.

Specifica un elemento che contiene una coppia di chiavi pubblica/privata.
NoClassMembers Parametro Boolean facoltativo.
ResolvedAssemblyReferences Facoltativo ITaskItem[] parametro di output.

Specifica i riferimenti all'assembly risolti.
ResolvedFiles Facoltativo ITaskItem[] parametro di output.

Specifica i file completi sul disco che corrispondono ai percorsi fisici delle librerie dei tipi forniti come input per questa attività.
ResolvedModules Parametro facoltativo ITaskItem[].
SdkToolsPath Parametro System.String facoltativo.

Se ExecuteAsTool è true, questo parametro deve essere impostato sul percorso degli strumenti SDK per la versione del framework di destinazione.
StateFile Parametro String facoltativo.

Specifica il file di cache per i timestamp dei componenti COM. Se non è presente, ogni esecuzione rigenera tutti i wrapper.
TargetFrameworkVersion Parametro String facoltativo.

Specifica la versione del framework di destinazione del progetto.

Il valore predefinito è String.Empty. ciò significa che non esiste alcun filtro per un riferimento basato sul framework di destinazione.
TargetProcessorArchitecture Parametro String facoltativo.

Specifica l'architettura del processore di destinazione preferita. Passato al flagtlbimp.exe/machine dopo la conversione.

Il valore del parametro deve essere un membro di ProcessorArchitecture.
TypeLibFiles Parametro ITaskItem[] facoltativo.

Specifica il percorso del file della libreria dei tipi per i riferimenti COM. Gli elementi inclusi in questo parametro possono contenere metadati dell'elemento. Per altre informazioni, vedere la sezione Metadati dell'elemento TypeLibFiles.
TypeLibNames Parametro ITaskItem[] facoltativo.

Specifica i nomi delle librerie dei tipi da risolvere. Gli elementi inclusi in questo parametro devono contenere alcuni metadati dell'elemento. Per altre informazioni, vedere la sezione Metadati dell'elemento TypeLibNames.
WrapperOutputDirectory Parametro String facoltativo.

Percorso sul disco in cui è posizionato l'assembly di interoperabilità generato. Se questi metadati dell'elemento non vengono specificati, l'attività usa il percorso assoluto della directory in cui si trova il file di progetto.

Metadati dell'elemento TypeLibNames

Nella tabella seguente vengono descritti i metadati dell'elemento disponibili per gli elementi passati al TypeLibNames parametro .

Metadata Description
GUID Metadati dell'elemento necessari.

GUID per la libreria dei tipi. Se i metadati dell'elemento non vengono specificati, l'attività ha esito negativo.
VersionMajor Metadati dell'elemento necessari.

Versione principale della libreria dei tipi. Se i metadati dell'elemento non vengono specificati, l'attività ha esito negativo.
VersionMinor Metadati dell'elemento necessari.

Versione secondaria della libreria dei tipi. Se i metadati dell'elemento non vengono specificati, l'attività ha esito negativo.
EmbedInteropTypes Metadati facoltativi Boolean .

Se true, incorporare i tipi di interoperabilità da questo riferimento direttamente nell'assembly anziché generare una DLL di interoperabilità.
LocaleIdentifier Metadati degli elementi facoltativi.

Identificatore delle impostazioni locali (o LCID) per la libreria dei tipi. Questo identificatore viene specificato come valore a 32 bit che identifica la lingua umana preferita da un utente, un'area o un'applicazione. Se questi metadati dell'elemento non vengono specificati, l'attività usa un identificatore delle impostazioni locali predefinito "0".
WrapperTool Metadati degli elementi facoltativi.

Specifica lo strumento wrapper utilizzato per generare il wrapper dell'assembly per questa libreria dei tipi. Se questi metadati dell'elemento non vengono specificati, l'attività usa uno strumento wrapper predefinito di "tlbimp". Le opzioni disponibili, senza distinzione tra maiuscole e minuscole, delle librerie dei tipi sono:

- Primary: usare questo strumento wrapper quando si vuole usare un assembly di interoperabilità primario già generato per il componente COM. Quando si usa questo strumento wrapper, non specificare una directory di output del wrapper perché l'attività non riesce.
- TLBImp: usare questo strumento wrapper quando si vuole generare un assembly di interoperabilità per il componente COM.
- PrimaryOrTLBImp: usare questo strumento wrapper quando non si è certi se Primary o TLBImp è appropriato. La Primary logica viene applicata per prima, quindi TLBImp.
- AXImp: usare questo strumento wrapper quando si desidera generare un assembly di interoperabilità per un controllo ActiveX.

Metadati dell'elemento TypeLibFiles

Nella tabella seguente vengono descritti i metadati dell'elemento disponibili per gli elementi passati al TypeLibFiles parametro .

Metadata Description
EmbedInteropTypes Parametro Boolean facoltativo.

Se true, incorporare i tipi di interoperabilità da questo riferimento direttamente nell'assembly anziché generare una DLL di interoperabilità.
WrapperTool Metadati degli elementi facoltativi.

Specifica lo strumento wrapper utilizzato per generare il wrapper dell'assembly per questa libreria dei tipi. Se questi metadati dell'elemento non vengono specificati, l'attività usa uno strumento wrapper predefinito di "tlbimp". Le opzioni disponibili, senza distinzione tra maiuscole e minuscole, delle librerie dei tipi sono:

- Primary: usare questo strumento wrapper quando si vuole usare un assembly di interoperabilità primario già generato per il componente COM. Quando si usa questo strumento wrapper, non specificare una directory di output del wrapper perché l'attività non riesce.
- TLBImp: usare questo strumento wrapper quando si vuole generare un assembly di interoperabilità per il componente COM.
- AXImp: usare questo strumento wrapper quando si desidera generare un assembly di interoperabilità per un controllo ActiveX.

Note

Altre informazioni fornite per identificare in modo univoco una libreria dei tipi, maggiore è la possibilità che l'attività venga risolta nel file corretto su disco.

Remarks

Oltre ai parametri elencati in questo articolo, questa attività eredita i parametri dalla Task classe . Per un elenco di questi parametri aggiuntivi e delle relative descrizioni, vedere classe base task.

Non è necessario registrare la DLL COM nel computer per consentire il funzionamento di questa attività.

MSB4803 Error

Se si tenta di eseguire un progetto che usa l'attività dai comandi dell'interfaccia ResolveCOMReference della dotnet riga di comando, viene visualizzato l'errore:

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

Questa attività non è supportata nella versione .NET Core di MSBuild, che viene usata quando si esegue il dotnet build comando dalla riga di comando. Provare a compilare il progetto richiamando MSBuild.exe dal prompt dei comandi per sviluppatori di Visual Studio, poiché questo eseguibile usa la versione .NET Framework di MSBuild.