ResolveComReference-Aufgabe

Akzeptiert eine Liste aus mindestens einem Typbibliotheksnamen oder mindestens einer TLB-Datei und löst diese Bibliotheken an Speicherorten auf Datenträgern auf.

Parameter

In der folgenden Tabelle werden die Parameter der ResolveCOMReference -Aufgabe beschrieben.

Parameter Beschreibung
DelaySign Optionaler Boolean-Parameter.

Legt den öffentlichen Schlüssel in der Assembly ab, wenn der Wert true ist Signiert die Assembly vollständig, wenn der Wert false ist
EnvironmentVariables Optionaler String[]-Parameter.

Ein Array von Paaren von Umgebungsvariablen; durch Gleichheitszeichen getrennt. Diese Variablen werden an die erstellten tlbimp.exe und aximp.exe zusätzlich zum regulären Umgebungsblock oder zum ausgewählten Überschreiben übergeben.
ExecuteAsTool Optionaler Boolean-Parameter.

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

Die typelib-Version enthält den Wrappernamen, wenn der Wert true ist. Der Standardwert ist 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 Datenträger an, die den physischen Speicherorten der Typbibliotheken entsprechen, die für diesen Task als Eingabe bereitgestellt wurden.
ResolvedModules Optionaler ITaskItem[]Parameter.
SdkToolsPath Optionaler System.String-Parameter.

Wenn ExecuteAsTooltrue ist, muss dieser Parameter auf den Pfad der SDK-Tools für die Zielframeworkversion festgelegt werden.
StateFile Optionaler String-Parameter.

Gibt die Cachedatei für die Zeitstempel von COM-Komponenten an. Falls nicht vorhanden, erstellt jede Ausführung alle Wrapper neu.
TargetFrameworkVersion Optionaler String-Parameter.

Gibt die Zielframeworkversion des Projekts an.

Der Standardwert ist String.Empty. Was bedeutet, dass nicht nach einem Verweis auf Grundlage des Zielframeworks gefiltert werden kann.
TargetProcessorArchitecture Optionaler String-Parameter.

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

Der Parameterwert sollte ein Member des Typs ProcessorArchitecture sein.
TypeLibFiles Optionaler ITaskItem[]-Parameter

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

Gibt die aufzulösenden Typbibliotheksnamen an. In diesem Parameter enthaltene Elemente müssen einige Elementmetadaten enthalten. Weitere Informationen finden Sie im Abschnitt TypeLibNames-Elementmetadaten weiter unten.
WrapperOutputDirectory Optionaler String-Parameter.

Der Speicherort auf dem Datenträger für die generierte Interop-Assembly. Wenn diese Elementmetadaten nicht angegeben werden, verwendet der Task den absoluten Pfad des Verzeichnisses, in dem sich die Projektdatei befindet.

TypeLibNames-Elementmetadaten

In der folgenden Tabelle werden die Elementmetadaten beschrieben, die für an den TypeLibNames-Parameter übergebene Elemente zur Verfügung stehen.

Metadaten Beschreibung
GUID Erforderliche Elementmetadaten

Die GUID für die Typbibliothek. Wenn diese Elementmetadaten nicht festgelegt sind, schlägt der Task fehl.
VersionMajor Erforderliche Elementmetadaten

Die Hauptversion der Typbibliothek Wenn diese Elementmetadaten nicht festgelegt sind, schlägt der Task fehl.
VersionMinor Erforderliche Elementmetadaten

Die Nebenversion der Typbibliothek Wenn diese Elementmetadaten nicht festgelegt sind, schlägt der Task fehl.
EmbedInteropTypes Optional Boolean-Metadaten.

Bei true betten Sie die Interop-Typen 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 wird als 32-Bit-Wert angegeben, der die Sprache identifiziert, die von einem Benutzer, einer Region oder eine Anwendung bevorzugt wird. Wenn diese Elementmetadaten nicht festgelegt sind, verwendet der Task den Standard-Gebietsschemabezeichner „0“ (null).
WrapperTool Optionale Elementmetadaten

Gibt das Wrappertool an, das verwendet wird, um den Assemblywrapper für diese Typbibliothek zu generieren. Wenn diese Elementmetadaten nicht festgelegt sind, verwendet der Task das Standardwrappertool „tlbimp“. Die verfügbaren Optionen von Typbibliotheken, die die Groß-/Kleinschreibung nicht beachten, sind:

- 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, weil der Task ansonsten fehlschlägt.
- TLBImp: Verwenden Sie dieses Wrappertoll, wenn Sie eine Interopassembly für die COM-Komponente generieren möchten.
- PrimaryOrTLBImp: Verwenden Sie dieses Wrappertool, wenn Sie nicht sicher sind, ob Primary oder TLBImp geeignet ist. Erst wird die Primary-Logik und dann TLBImp angewendet.
- AXImp: Verwenden Sie dieses Wrappertoll, 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 an den TypeLibFiles-Parameter übergebene Elemente zur Verfügung stehen.

Metadaten Beschreibung
EmbedInteropTypes Optionaler Boolean-Parameter

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

Gibt das Wrappertool an, das verwendet wird, um den Assemblywrapper für diese Typbibliothek zu generieren. Wenn diese Elementmetadaten nicht festgelegt sind, verwendet der Task das Standardwrappertool „tlbimp“. Die verfügbaren Optionen von Typbibliotheken, die die Groß-/Kleinschreibung nicht beachten, sind:

- 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, weil der Task ansonsten fehlschlägt.
- TLBImp: Verwenden Sie dieses Wrappertoll, wenn Sie eine Interopassembly für die COM-Komponente generieren möchten.
- AXImp: Verwenden Sie dieses Wrappertoll, wenn Sie eine Interopassembly für ein ActiveX-Steuerelement generieren möchten.

Hinweis

Je mehr Informationen Sie zur Verfügung stellen, um eine Typbibliothek eindeutig identifizieren zu können, desto wahrscheinlicher ist es, dass der Task in die korrekten Dateien auf dem Datenträger auflöst.

Hinweise

Zusätzlich zu den oben aufgeführten Parametern erbt diese Aufgabe Parameter von der Task-Klasse. Eine Liste mit diesen zusätzlichen Parametern und ihren Beschreibungen finden Sie unter Taskbasisklasse.

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

Fehler MSB4803

Wenn Sie versuchen, ein Projekt auszuführen, das die Aufgabe ResolveCOMReference aus den dotnet-Befehlen der CLI verwendet, erhalten Sie den Fehler:

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, die verwendet wird, wenn Sie den Befehl dotnet build über die Befehlszeile ausführen. Versuchen Sie, das Projekt zu erstellen, indem Sie MSBuild.exe an der Developer-Eingabeaufforderung von Visual Studio aufrufen, da diese die .NET Framework-Version von MSBuild verwendet.

Siehe auch