Hva er TLB-filformatet?
.tlb-filer brukes av OLE/COM (Component Object Model)-objekter og komponenter på Windows.
Filer med filendelsen .tlb inneholder typebiblioteker som lagrer grensesnittbeskrivelser for COM-objekter. Slike objekter utgjør byggeklossene i COM-baserte Windows-komponenter. Et typebibliotek lagrer ikke medieinnhold - det lagrer strukturerte definisjoner som:
- grensesnitt- og metodesignaturer,
- deklarasjoner for egenskaper og hendelser,
- type-aliaser og konstanter,
- CoClass (opprettbare klasser) definisjoner.
.tlb-filer lagrer parametere og metadata som trengs for at klienter skal kunne kommunisere med COM-komponenter ved kjøretid. Typebiblioteker kan bygges inn i en .EXE-fil, et .DLL-bibliotek eller en .ocx ActiveX-kontroll som en TYPELIB-ressurs - eller defineres i en frittstående .tlb-fil. Windows API-funksjonen LoadTypeLib() laster dem ved kjøretid.
Det finnes to binære formater på disk: det moderne MSFT-formatet (generert av MIDL-kompilatoren fra .idl-kilde, magic bytes MSFT) og det eldre SLTG-formatet fra den tidlige Visual Basic- og Office-æraen. Visual Basic og andre COM-bevisste verktøy bruker typebiblioteker for å muliggjøre IntelliSense og «late-binding».
Sikkerhet og trygghet
RISIKO: LOWEn .tlb-fil er en skrivebeskyttet binær typebeskrivelse og inneholder ingen kjørbar kode. Det er trygt å laste eller inspisere en (i OleView, Visual Studio eller en TLB-viser). Den kan ikke kjøre kode på egen hånd. COM-komponenten som .tlb-filen beskriver (en .dll eller .ocx), er den kjørbare delen og bærer sin egen risiko - men selve .tlb-filen er ufarlige metadata.
Formatdetaljer
i et nøtteskall- Delphi Type Library-fil (.tlb) - Borland/Embarcadero Delphi bruker også .tlb for COM-typebiblioteker den genererer - samme Microsoft COM-standardformat, bare opprettet av Delphis TLIBIMP- eller TLIB-verktøy.
- Watcom C++ linker midlertidig fil - Noen eldre Watcom/OpenWatcom-bygg brukte .tlb som en midlertidig objekt-/linkerfil - ikke relatert til COM, må ikke åpnes som et typebibliotek.
Programmer som åpner TLB-filer
Tekniske detaljer
dyp spesifikasjon| Format-type | Binært COM/OLE-typebibliotek som beskriver grensesnitt, metoder og typedefinisjoner |
| MSFT-format magic bytes | 4D 53 46 54 - MSFT-signatur ved offset 0; moderne format generert av MIDL/CreateTypeLib2 |
| SLTG-format magic bytes | 53 4C 54 47 - SLTG-signatur ved offset 0; eldre format fra Visual Basic-æraen fra CreateTypeLib |
| Byterekkefølge | Little-endian |
| Typisk filstørrelse | 10 KB - 2 MB (varierer med antall grensesnitt og typer som beskrives) |
| Intern struktur | Fast hode, segmentkatalog, streng-pool, GUID-pool og typebeskrivelsesposter som koder alle grensesnittdefinisjoner, metodesignaturer, konstanter og hendelser |
| Innebygd form | Vanligvis lagret som en TYPELIB-ressurs inne i en .dll, .ocx eller .exe i stedet for som en frittstående fil |
| Byggeverktøy | MIDL-kompilator (.idl → .tlb); utdatert MKTYPLIB (.odl → .tlb) |
| Windows laste-API | LoadTypeLib() / LoadRegTypeLib() |
| Plattform | Kun Windows (OLE/COM-undersystem) |
| Primærbruk | Muliggjør tidlig binding, IntelliSense og COM-automatiseringsskripting i utviklingsverktøy og kjøretidsklienter |
| Delvis etterfølger | .winmd (ECMA-335 metadata) for WinRT; .NET assembly-metadata for administrert COM-samhandling |
| Utgitt | 1993 (OLE 2.0 / COM; type library concept introduced for OLE Automation) |
| Siste versjon | MSFT format used with CreateTypeLib2 API (current; generated by MIDL compiler); SLTG format (older, CreateTypeLib API) |
| Åpen standard | Ja · royalty-fri |
| Spesifikasjon | learn.microsoft.com |
TLB-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om TLB-filer.