Tlbimp.exe (importér knihovny typů)
Nástroj Type Library Importer převádí definice typu nalezené v knihovně typů modelu COM na ekvivalentní definice v sestavení Common Language Runtime. Výstupem nástroje Tlbimp.exe je binární soubor (sestavení) obsahující metadata modulu runtime pro typy definované v rámci původní knihovny typů. Tento soubor můžete prozkoumat pomocí nástrojů, jako jsou Ildasm.exe.
Tento nástroj je automaticky nainstalován se sadou Visual Studio. Ke spuštění nástroje použijte Visual Studio Developer Command Prompt nebo Visual Studio Developer PowerShell.
Na příkazovém řádku zadejte následující:
Syntaxe
tlbimp tlbFile [options]
Parametry
Argument | Popis |
---|---|
tlbFile | Název jakéhokoli souboru obsahujícího knihovnu typů modelu COM. |
Možnost | Popis |
---|---|
/asmversion: versionnumber | Určuje číslo verze vytvářeného sestavení. Zadejte číslo verze ve formátu major.minor.build.revision. |
/společnost: companyinformation |
Přidá informace o společnosti do výstupního sestavení. |
/autorské právo: copyrightinformation |
Přidá informace o autorských právech do výstupního sestavení. Tyto informace lze zobrazit v dialogovém okně Vlastnosti souboru sestavení. |
/delaysign | Říká nástroji Tlbimp.exe, aby podepsal výsledné sestavení se silným názvem pomocí zpožděného podepisování. Tuto možnost musíte zadat pomocí možnosti /keycontainer:, /keyfile:, nebo /publickey: . Další informace o zpožděném procesu podepisování naleznete v tématu Zpoždění podepisování sestavení. |
/Pomoc | Zobrazí syntaxi příkazu a možnosti nástroje. |
/keycontainer: název kontejneru | Podepíše výsledné sestavení silným názvem pomocí dvojice veřejného/privátního klíče nalezeného v kontejneru klíčů určeném názvem kontejneru. |
/keyfile: název souboru | Podepíše výsledné sestavení silným názvem pomocí oficiální dvojice veřejného a privátního klíče vydavatele nalezeného v názvu souboru. |
/stroj: machinetype |
Vytvoří sestavení určené pro konkrétní typ počítače (mikroprocesoru). Podporované typy počítačů: x86, x64, Itanium a Agnostic. |
/namespace: obor názvů | Určuje obor názvů, ve kterém se má vytvořit sestavení. |
/noclassmembers | Zabraňuje nástroji Tlbimp.exe v přidávání členů do tříd. Tím se vyhnete potenciálnímu TypeLoadException. |
/nologo | Potlačí zobrazení úvodního nápisu společnosti Microsoft. |
/out: název souboru | Určuje název výstupního souboru, sestavení a oboru názvů, do kterých chcete zapsat definice metadat. Možnost /out nemá žádný vliv na obor názvů sestavení, pokud knihovna typů určuje vlastní atribut IDL (Interface Definition Language), který explicitně řídí obor názvů sestavení. Pokud tuto možnost nezadáte, nástroj Tlbimp.exe zapíše metadata do souboru se stejným názvem, jaký má skutečná knihovna typů definovaná v rámci vstupního souboru, a přiřadí mu příponu .dll. Pokud má výstupní soubor stejný název jako vstupní soubor, nástroj vygeneruje chybu bránící přepsání knihovny typů. |
/primární | Vytvoří primární sestavení zprostředkovatele komunikace pro zadanou knihovnu typů. Do sestavení jsou vloženy informace o tom, že toto sestavení vytvořil vydavatel knihovny typů. Zadáním primárního sestavení zprostředkovatele komunikace odlišíte sestavení vydavatele od ostatních sestavení vytvořených z knihovny typů používající nástroj Tlbimp.exe. Možnost /primary byste měli použít pouze v případě, že jste vydavatelem knihovny typů, kterou importujete s Tlbimp.exe. Mějte na paměti, že je nutné podepsat primární sestavení vzájemné spolupráce se silným názvem. Další informace naleznete v tématu Primární sestavení vzájemné spolupráce. |
/výrobek: productinformation |
Přidá informace o produktu do výstupního sestavení. Tyto informace lze zobrazit v dialogovém okně Vlastnosti souboru sestavení. |
/productversion: productversioninformation |
Přidá informace o verzi produktu do výstupního sestavení. Neexistují žádná omezení formátu. Tyto informace lze zobrazit v dialogovém okně Vlastnosti souboru sestavení. |
/publickey: název souboru | Určuje soubor obsahující veřejný klíč pro použití k podepsání výsledného sestavení. Pokud zadáte parametr /keyfile: nebo /keycontainer: místo /publickey:, Tlbimp.exe vygeneruje veřejný klíč z páru veřejného/privátního klíče dodaného se souborem /keyfile: nebo /keycontainer:. Možnost /publickey: podporuje testovací klíč a zpoždění podepisování scénářů. Soubor má formát generovaný nástrojem Sn.exe. Další informace naleznete v části -p možnost Sn.exe v nástroji Strong Name (Sn.exe). |
/reference: název souboru | Určuje soubor sestavení, který se má použít při řešení odkazů na typy definované mimo aktuální knihovnu typů. Pokud nezadáte možnost /reference , Tlbimp.exe automaticky rekurzivně importuje jakoukoli externí knihovnu typů, kterou knihovna typů importuje. Pokud zadáte možnost /reference , nástroj se pokusí přeložit externí typy v odkazovaných sestaveních před importem jiných knihoven typů. |
/umlčet: warningnumber |
Potlačí zobrazení konkrétního upozornění. Tuto možnost nelze použít s parametrem /silent. |
/tichý | Potlačí zobrazování zpráv o úspěšném dokončení. Tuto možnost nelze použít s parametrem /ticho. |
/strictref | Neimportuje knihovnu typů, pokud nástroj nemůže přeložit všechny odkazy v aktuálním sestavení, sestavení zadaná s možností /reference nebo registrovaná primární sestavení vzájemné spolupráce (PIA). |
/strictref:nopia | Stejné jako /strictref, ale ignoruje PIA. |
/sysarray | Určuje nástroj pro import stylu MODELU COM SafeArray jako spravovaného Array typu. |
/tlbreference: název souboru | Určuje soubor knihovny typů, který se má použít k vyřešení odkazů knihovny typů bez konzultace s registrem. Tato možnost nenačte některé starší formáty knihovny typů. Stále však můžete načíst starší formáty knihovny typů implicitně pomocí registru nebo aktuálního adresáře. |
/ochranná známka: trademarkinformation |
Přidá informace o obchodní známce do výstupního sestavení. Tyto informace lze zobrazit v dialogovém okně Vlastnosti souboru sestavení. |
/transform: transformname | Transformuje metadata určená parametrem transformname . Zadejte dispret parametru transformname pro transformaci [out, retval] parametrů metod v rozhraních jen pro odesílání (dispinterfaces) na vrácené hodnoty. Další informace o této možnosti naleznete v příkladech dále v tomto tématu. |
/nebezpečný | Vytvoří rozhraní bez kontroly zabezpečení rozhraní .NET Framework. Volání metody, která je vystavena tímto způsobem, může představovat bezpečnostní riziko. Tuto možnost nepoužívejte, pokud si nejste vědomi rizika vystavení takového kódu. |
/verbose | Určuje režim podrobného vypisování; zobrazí další informace o importované knihovně typů. |
/VariantBoolFieldToBool | VARIANT_BOOL Převede pole ve strukturách na Boolean. |
/? | Zobrazí syntaxi příkazu a možnosti nástroje. |
Poznámka:
Možnosti příkazového řádku pro nástroj Tlbimp.exe nerozlišují malá a velká písmena a lze je zadat v libovolném pořadí. Pro jednoznačnou identifikaci je potřeba pouze poskytnout dostatek parametrů. Proto /n je ekvivalentní /nologo a /ou: outfile.dll je ekvivalentní /out: outfile.dll.
Poznámky
Nástroj Tlbimp.exe provádí převody celé knihovny typů najednou. Pomocí tohoto nástroje nelze generovat informace pro podmnožinu typů definovaných v rámci jedné knihovny typů.
Často je užitečné nebo nutné mít možnost přiřadit sestavením silné názvy . Proto nástroj Tlbimp.exe obsahuje možnosti pro poskytnutí informací nezbytných k vytvoření sestavení se silným názvem. Parametr /keyfile: i /keycontainer: možnosti podepisují sestavení se silnými názvy. Je tedy logické zadat vždy pouze jednu z těchto možností.
Více referenčních sestavení můžete zadat pomocí parametru /reference vícekrát.
Vzhledem k tomu, jakým způsobem Tlbimp.exe generuje sestavení, není možné převést sestavení na jinou mscorlib
verzi. Pokud například chcete vygenerovat sestavení, které cílí na rozhraní .NET Framework 2.0, musí se použít Tlbimp.exe dodávaná se sadou .NET Framework 2.0/3.0/3.5 SDK. Aby bylo možné cílit na rozhraní .NET Framework 4.x, měli byste použít Tlbimp.exe dodané se sadou .NET Framework 4.x SDK.
ID prostředku lze volitelně připojit k souboru knihovny typů při importu knihovny typů z modulu obsahujícího více knihoven typů. Nástroj Tlbimp.exe je schopen najít tento soubor pouze v případě, že se nachází v aktuálním adresáři, nebo pokud zadáte úplnou cestu. Podívejte se na příklad dále v tomto tématu.
Příklady
Následující příkaz vygeneruje sestavení se stejným názvem jako knihovna typů, která se nachází v myTest.tlb
a s rozšířením .dll.
tlbimp myTest.tlb
Následující příkaz vygeneruje sestavení s názvem myTest.dll
.
tlbimp myTest.tlb /out:myTest.dll
Následující příkaz vygeneruje sestavení se stejným názvem jako knihovna typů určená MyModule.dll\1
příponou .dll. MyModule.dll\1
musí být umístěn v aktuálním adresáři.
tlbimp MyModule.dll\1
Následující příkaz vygeneruje sestavení s názvem myTestLib.dll
knihovny TestLib.dll
typů . Možnost /transform:dispret transformuje všechny [out, retval] parametry metod na dispinterfaces v knihovně typů na návratové hodnoty ve spravované knihovně.
tlbimp TestLib.dll /transform:dispret /out:myTestLib.dll
Knihovna TestLib.dll
typů , v předchozím příkladu obsahuje dispinterface metoda s názvem SomeMethod
, která vrací void a má [out, retval] parametr. Následující kód je podpis metody vstupního typu knihovny pro SomeMethod
in TestLib.dll
.
void SomeMethod([out, retval] VARIANT_BOOL*);
Zadání možnosti /transform:dispret způsobí, že Tlbimp.exe transformovat [out, retval]
parametr SomeMethod
na návratovou bool
hodnotu. Následuje podpis metody, který Tlbimp.exe vytvoří pro SomeMethod
spravovanou knihovnu myTestLib.dll
při zadání parametru /transform:dispret .
bool SomeMethod();
Pokud použijete Tlbimp.exe k vytvoření spravované knihovny pro TestLib.dll
bez zadání /transform:dispret, nástroj vytvoří následující podpis metody pro SomeMethod
spravovanou knihovnu myTestLib.dll
.
void SomeMethod(out bool x);
Viz také
- Nástroje
- Tlbexp.exe (exportér knihovny typů)
- Import knihovny typů ve formě sestavení
- Souhrn převodu typů do sestavení
- Ildasm.exe (IL Disassembler)
- Sn.exe (nástroj pro silný název)
- Sestavení se silným názvem
- Atributy pro import knihoven typů do sestavení vzájemné spolupráce
- Prostředí příkazového řádku pro vývojáře