ResolveComReference task

Egy vagy több típustárnév vagy .tlb fájl listáját veszi fel, és feloldja ezeket a típustárakat a lemezen lévő helyekre.

Parameters

Az alábbi táblázat a ResolveCOMReference tevékenység paramétereit ismerteti.

Parameter Description
DelaySign Nem kötelező Boolean paraméter.

Ha true, a nyilvános kulcsot a szerelvénybe helyezi. Ha false, teljes mértékben aláírja a szerelvényt.
EnvironmentVariables Nem kötelező String[] paraméter.

A környezeti változók párjainak tömbje egyenlő jelekkel elválasztva. Ezeket a változókat a rendszer az ívott tlbimp.exe és aximp.exe a normál környezeti blokk mellett vagy szelektíven felül is bírálja.
ExecuteAsTool Nem kötelező Boolean paraméter.

Ha true, fut tlbimp.exe és aximp.exe a megfelelő cél-keretrendszerből a szükséges burkolószerelvények létrehozásához. Ez a paraméter lehetővé teszi a többhelyes célzást.
IncludeVersionInInteropName Nem kötelező Boolean paraméter.

Ha truea típustár verziója szerepel a burkolónévben. Az alapértelmezett érték a false.
KeyContainer Nem kötelező String paraméter.

Egy nyilvános/privát kulcspárt tartalmazó tárolót határoz meg.
KeyFile Nem kötelező String paraméter.

Egy nyilvános/titkos kulcspárt tartalmazó elemet határoz meg.
NoClassMembers Nem kötelező Boolean paraméter.
ResolvedAssemblyReferences Nem kötelező ITaskItem[] kimeneti paraméter.

Megadja a feloldott szerelvényhivatkozásokat.
ResolvedFiles Nem kötelező ITaskItem[] kimeneti paraméter.

Megadja a lemezen lévő teljes mértékben minősített fájlokat, amelyek megfelelnek a feladat bemeneteként megadott típuskódtárak fizikai helyének.
ResolvedModules Nem kötelező ITaskItem[]paraméter.
SdkToolsPath Nem kötelező System.String paraméter.

Ha ExecuteAsTool igen true, akkor ezt a paramétert a megcélzott keretrendszerverzió SDK-eszközök elérési útjára kell állítani.
StateFile Nem kötelező String paraméter.

A COM-összetevők időbélyegeinek gyorsítótárfájlja. Ha nincs jelen, minden futtatás újragenerálja az összes burkolót.
TargetFrameworkVersion Nem kötelező String paraméter.

Megadja a projekt cél keretrendszerének verzióját.

Az alapértelmezett érték a String.Empty. ami azt jelenti, hogy nincs szűrés a cél-keretrendszeren alapuló referencia esetében.
TargetProcessorArchitecture Nem kötelező String paraméter.

Megadja az előnyben részesített célprocesszor-architektúrát. A fordítás után át lett adva a tlbimp.exe/gép jelölőjének.

A paraméterértéknek a következő tagnak ProcessorArchitecturekell lennie: .
TypeLibFiles Nem kötelező ITaskItem[] paraméter.

Megadja a COM-hivatkozások típustárfájljának elérési útját. A paraméterben szereplő elemek tartalmazhatnak elemek metaadatait. További információ: TypeLibFiles elem metaadatai.
TypeLibNames Nem kötelező ITaskItem[] paraméter.

Megadja a feloldandó típustárneveket. A paraméterben szereplő elemeknek tartalmazniuk kell néhány elem metaadatait. További információ: TypeLibNames elem metaadatai.
WrapperOutputDirectory Nem kötelező String paraméter.

A lemez azon helye, ahol a létrehozott interop-szerelvény elhelyezve van. Ha ez az elem metaadatai nincsenek megadva, a tevékenység annak a könyvtárnak az abszolút elérési útját használja, amelyben a projektfájl található.

TypeLibNames elem metaadatai

Az alábbi táblázat a paraméternek átadott elemekhez elérhető elem metaadatait TypeLibNames ismerteti.

Metadata Description
GUID Kötelező elem metaadatai.

A típustár GUID azonosítója. Ha ez az elem metaadatai nincsenek megadva, a feladat meghiúsul.
VersionMajor Kötelező elem metaadatai.

A típustár főverziója. Ha ez az elem metaadatai nincsenek megadva, a feladat meghiúsul.
VersionMinor Kötelező elem metaadatai.

A típustár alverziója. Ha ez az elem metaadatai nincsenek megadva, a feladat meghiúsul.
EmbedInteropTypes Nem kötelező Boolean metaadatok.

Ha trueaz interop típusok beágyazása ebből a hivatkozásból közvetlenül a szerelvénybe ahelyett, hogy interop DLL-t hoz létre.
LocaleIdentifier Nem kötelező elem metaadatai.

A típustár területi azonosítója (vagy LCID). Ez az azonosító 32 bites értékként van megadva, amely azonosítja a felhasználó, régió vagy alkalmazás által előnyben részesített emberi nyelvet. Ha ez az elem metaadatai nincsenek megadva, a tevékenység a "0" alapértelmezett területi azonosítóját használja.
WrapperTool Nem kötelező elem metaadatai.

Megadja az ehhez a típustárhoz tartozó szerelvényburkoló létrehozásához használt burkolóeszközt. Ha ez az elem metaadatai nincsenek megadva, a tevékenység a "tlbimp" alapértelmezett burkolóeszközét használja. A típuskódtárak rendelkezésre álló, kis- és nagybetűkkel nem érzéketlen lehetőségei a következők:

- Primary: Ezt a burkolóeszközt akkor használja, ha egy már létrehozott elsődleges interop-szerelvényt szeretne használni a COM-összetevőhöz. Ha ezt a burkolóeszközt használja, ne adjon meg burkoló kimeneti könyvtárat, mert ez a feladat meghiúsulását okozza.
- TLBImp: Ezt a burkolóeszközt akkor használja, ha interop-szerelvényt szeretne létrehozni a COM-összetevőhöz.
- PrimaryOrTLBImp: Használja ezt a burkolóeszközt, ha nem biztos abban, hogy megfelelő-e Primary vagy TLBImp sem. Először Primary a logika lesz alkalmazva, majd TLBImpa rendszer.
- AXImp: Ezt a burkolóeszközt akkor használja, ha interop assemblyt szeretne létrehozni egy ActiveX-vezérlőhöz.

TypeLibFiles elem metaadatai

Az alábbi táblázat a paraméternek átadott elemekhez elérhető elem metaadatait TypeLibFiles ismerteti.

Metadata Description
EmbedInteropTypes Nem kötelező Boolean paraméter.

Ha trueaz interop típusok beágyazása ebből a hivatkozásból közvetlenül a szerelvénybe ahelyett, hogy interop DLL-t hoz létre.
WrapperTool Nem kötelező elem metaadatai.

Megadja az ehhez a típustárhoz tartozó szerelvényburkoló létrehozásához használt burkolóeszközt. Ha ez az elem metaadatai nincsenek megadva, a tevékenység a "tlbimp" alapértelmezett burkolóeszközét használja. A típuskódtárak rendelkezésre álló, kis- és nagybetűkkel nem érzéketlen lehetőségei a következők:

- Primary: Ezt a burkolóeszközt akkor használja, ha egy már létrehozott elsődleges interop-szerelvényt szeretne használni a COM-összetevőhöz. Ha ezt a burkolóeszközt használja, ne adjon meg burkoló kimeneti könyvtárat, mert ez a feladat meghiúsulását okozza.
- TLBImp: Ezt a burkolóeszközt akkor használja, ha interop-szerelvényt szeretne létrehozni a COM-összetevőhöz.
- AXImp: Ezt a burkolóeszközt akkor használja, ha interop assemblyt szeretne létrehozni egy ActiveX-vezérlőhöz.

Note

Minél több információt ad meg egy típustár egyedi azonosításához, annál nagyobb annak a lehetősége, hogy a feladat a lemezen lévő megfelelő fájlra oldódik fel.

Remarks

A cikkben felsorolt paraméterek mellett ez a feladat örökli az osztály paramétereit Task . Ezeknek a további paramétereknek és leírásuknak a listáját Tevékenység alaposztálycímű témakörben találja.

A COM DLL-t nem kell regisztrálni a gépen ahhoz, hogy ez a feladat működjön.

MSB4803 Error

Ha olyan projektet próbál futtatni, amely a ResolveCOMReference parancssori felület parancsaiból használja a dotnet feladatot, a következő hibaüzenet jelenik meg:

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

Ez a feladat nem támogatott az MSBuild .NET Core-verziójában, amely a parancs parancssorból való futtatásakor dotnet build használatos. Próbálja meg felépíteni a projektet a Visual Studio fejlesztői parancssorábólMSBuild.exe meghívásával, mivel ez a végrehajtható fájl az MSBuild .NET-keretrendszer verzióját használja.