Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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.