Freigeben über


ResolveComReference task

Verwendet eine Liste mit einem oder mehreren Typbibliotheksnamen oder TLB-Dateien und löst diese Typbibliotheken in Speicherorte auf dem Datenträger auf.

Parameters

In der folgenden Tabelle werden die Parameter des ResolveCOMReference Vorgangs beschrieben.

Parameter Description
DelaySign Optionaler Boolean-Parameter.

Wenn true, platziert den öffentlichen Schlüssel in der Assembly. Wenn false, signiert die Assembly vollständig.
EnvironmentVariables Optionaler String[]-Parameter.

Array von Paaren von Umgebungsvariablen, getrennt durch Gleichheitszeichen. Diese Variablen werden zusätzlich zum regulären Umgebungsblock an dietlbimp.exeund aximp.exe übergeben oder selektiv außer Kraft gesetzt.
ExecuteAsTool Optionaler Boolean-Parameter.

Wenn true, wird tlbimp.exe und aximp.exe aus dem entsprechenden Zielframework ausgeführt, um die erforderlichen Wrapperassemblys zu generieren. Dieser Parameter ermöglicht die Mehrfachadressierung.
IncludeVersionInInteropName Optionaler Boolean-Parameter.

Wenn truedie Typbibliotheksversion im Wrappernamen enthalten ist. Der Standardwert lautet false.
KeyContainer Optionaler String-Parameter.

Gibt einen Container an, der ein öffentliches/privates Schlüsselpaar enthält.
KeyFile Optionaler String-Parameter.

Gibt ein Element an, das ein öffentliches/privates Schlüsselpaar enthält.
NoClassMembers Optionaler Boolean-Parameter.
ResolvedAssemblyReferences Optionaler ITaskItem[] Ausgabeparameter.

Gibt die aufgelösten Assemblyverweise an.
ResolvedFiles Optionaler ITaskItem[] Ausgabeparameter.

Gibt die vollqualifizierten Dateien auf dem Datenträger an, die den physischen Speicherorten der Typbibliotheken entsprechen, die als Eingabe für diese Aufgabe bereitgestellt wurden.
ResolvedModules Optionaler ITaskItem[]Parameter.
SdkToolsPath Optionaler System.String-Parameter.

Ist ExecuteAsTool dies trueder Fall, muss dieser Parameter auf den SDK-Toolspfad für die Zielversion des Frameworks festgelegt werden.
StateFile Optionaler String-Parameter.

Gibt die Cachedatei für COM-Komponentenzeitstempel an. Wenn nicht vorhanden, generiert jeder Run alle Wrapper neu.
TargetFrameworkVersion Optionaler String-Parameter.

Gibt die Projektzielframeworkversion an.

Der Standardwert lautet String.Empty. Dies bedeutet, dass keine Filterung für einen Verweis auf der Grundlage des Zielframeworks vorhanden ist.
TargetProcessorArchitecture Optionaler String-Parameter.

Gibt die bevorzugte Zielprozessorarchitektur an. Wird nach der Übersetzung an die tlbimp.exe/machine-Kennzeichnung übergeben.

Der Parameterwert sollte ein Element von ProcessorArchitecture.
TypeLibFiles Optionaler ITaskItem[]-Parameter.

Gibt den Typbibliotheksdateipfad zu COM-Verweisen an. In diesem Parameter enthaltene Elemente können Elementmetadaten enthalten. Weitere Informationen finden Sie im Abschnitt "TypeLibFiles"-Elementmetadaten.
TypeLibNames Optionaler ITaskItem[]-Parameter.

Gibt die Namen der Typbibliothek an, die aufgelöst werden sollen. In diesem Parameter enthaltene Elemente müssen einige Elementmetadaten enthalten. Weitere Informationen finden Sie im Abschnitt "TypeLibNames"-Elementmetadaten.
WrapperOutputDirectory Optionaler String-Parameter.

Der Speicherort auf dem Datenträger, an dem die generierte Interopassembly platziert wird. Wenn diese Elementmetadaten nicht angegeben werden, verwendet der Vorgang den absoluten Pfad des Verzeichnisses, in dem sich die Projektdatei befindet.

TypeLibNames-Elementmetadaten

In der folgenden Tabelle werden die Elementmetadaten beschrieben, die für elemente verfügbar sind, die an den TypeLibNames Parameter übergeben werden.

Metadata Description
GUID Erforderliche Elementmetadaten.

Die GUID für die Typbibliothek. Wenn diese Elementmetadaten nicht angegeben werden, schlägt die Aufgabe fehl.
VersionMajor Erforderliche Elementmetadaten.

Die Hauptversion der Typbibliothek Wenn diese Elementmetadaten nicht angegeben werden, schlägt die Aufgabe fehl.
VersionMinor Erforderliche Elementmetadaten.

Die Nebenversion der Typbibliothek Wenn diese Elementmetadaten nicht angegeben werden, schlägt die Aufgabe fehl.
EmbedInteropTypes Optionale Boolean Metadaten.

Wenn true, betten Sie die Interoperabilitätstypen aus diesem Verweis direkt in Ihre Assembly ein, anstatt eine Interop-DLL zu generieren.
LocaleIdentifier Optionale Elementmetadaten.

Der Gebietsschemabezeichner (oder LCID) für die Typbibliothek. Dieser Bezeichner wird als 32-Bit-Wert angegeben, der die von einem Benutzer, einer Region oder Anwendung bevorzugte Menschliche Sprache identifiziert. Wenn diese Elementmetadaten nicht angegeben werden, verwendet die Aufgabe einen Standardgebietsschemabezeichner von "0".
WrapperTool Optionale Elementmetadaten.

Gibt das Wrappertool an, das zum Generieren des Assemblywrappers für diese Typbibliothek verwendet wird. Wenn diese Elementmetadaten nicht angegeben sind, verwendet die Aufgabe ein Standardwrappertool von "tlbimp". Bei den verfügbaren Typenbibliotheken wird die Groß-/Kleinschreibung nicht beachtet:

- Primary: Verwenden Sie dieses Wrappertool, wenn Sie eine bereits generierte primäre Interopassembly für die COM-Komponente verwenden möchten. Wenn Sie dieses Wrappertool verwenden, geben Sie kein Wrapperausgabeverzeichnis an, da die Aufgabe fehlschlägt.
- TLBImp: Verwenden Sie dieses Wrappertool, wenn Sie eine Interopassembly für die COM-Komponente generieren möchten.
- PrimaryOrTLBImp: Verwenden Sie dieses Wrappertool, wenn Sie nicht sicher sind, ob Primary sie TLBImp geeignet sind. Die Primary Logik wird zuerst angewendet, dann TLBImp.
- AXImp: Verwenden Sie dieses Wrappertool, wenn Sie eine Interopassembly für ein ActiveX-Steuerelement generieren möchten.

TypeLibFiles-Elementmetadaten

In der folgenden Tabelle werden die Elementmetadaten beschrieben, die für elemente verfügbar sind, die an den TypeLibFiles Parameter übergeben werden.

Metadata Description
EmbedInteropTypes Optionaler Boolean-Parameter.

Wenn true, betten Sie die Interoperabilitätstypen aus diesem Verweis direkt in Ihre Assembly ein, anstatt eine Interop-DLL zu generieren.
WrapperTool Optionale Elementmetadaten.

Gibt das Wrappertool an, das zum Generieren des Assemblywrappers für diese Typbibliothek verwendet wird. Wenn diese Elementmetadaten nicht angegeben sind, verwendet die Aufgabe ein Standardwrappertool von "tlbimp". Bei den verfügbaren Typenbibliotheken wird die Groß-/Kleinschreibung nicht beachtet:

- Primary: Verwenden Sie dieses Wrappertool, wenn Sie eine bereits generierte primäre Interopassembly für die COM-Komponente verwenden möchten. Wenn Sie dieses Wrappertool verwenden, geben Sie kein Wrapperausgabeverzeichnis an, da die Aufgabe fehlschlägt.
- TLBImp: Verwenden Sie dieses Wrappertool, wenn Sie eine Interopassembly für die COM-Komponente generieren möchten.
- AXImp: Verwenden Sie dieses Wrappertool, wenn Sie eine Interopassembly für ein ActiveX-Steuerelement generieren möchten.

Note

Je mehr Informationen Sie bereitstellen, um eine Typbibliothek eindeutig zu identifizieren, desto größer ist die Möglichkeit, dass die Aufgabe in die richtige Datei auf dem Datenträger aufgelöst wird.

Remarks

Zusätzlich zu den in diesem Artikel aufgeführten Parametern erbt diese Aufgabe Parameter von der Task Klasse. Eine Liste dieser zusätzlichen Parameter und deren Beschreibungen finden Sie unter Task-Basisklasse.

Die COM-DLL muss nicht auf dem Computer registriert werden, damit diese Aufgabe funktioniert.

MSB4803 Error

Wenn Sie versuchen, ein Projekt auszuführen, das die ResolveCOMReference Aufgabe aus den dotnet CLI-Befehlen verwendet, wird die Fehlermeldung angezeigt:

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

Diese Aufgabe wird in der .NET Core-Version von MSBuild nicht unterstützt, was beim Ausführen des dotnet build Befehls über die Befehlszeile verwendet wird. Versuchen Sie, das Projekt zu erstellen, indem Sie MSBuild.exe über die Visual Studio Developer-Eingabeaufforderung aufrufen, da diese ausführbare Datei die .NET Framework-Version von MSBuild verwendet.