Domanda

Voglio sapere se è possibile registrare una libreria di tipi senza usare il Strumento Regasm. Ecco la mia situazione, che si spera che spieghi perché voglio farlo:

Sto sviluppando un assembly in .NET che fornirà alcune funzionalità moderne per le nostre vecchie applicazioni VB6. Ho registrato con successo l'assemblaggio e la libreria di tipi sulla mia macchina di sviluppo usando Regasm come così:

regasm.exe MyAssembly.dll /tlb /codebase

Il comando sopra genera la libreria di tipi (myassembly.tlb) e la registra e la registrazione dell'assembly. Ho bisogno della libreria di tipi registrata in modo da poter avere Intellisense in VB6.

Il mio problema con questo metodo è che non ho lo stesso livello di controllo quando genero il file della libreria di tipo come faccio Tlbexp.exe. In particolare, devo usare il flag di TlBexp /nomi per Specificare il caso corretto dei miei nomi di proprietà (Regasm li macella). Quindi, se utilizzo TLBEXP per generare il mio file TLB, esiste un modo in cui posso registrarlo separatamente dal processo di registrazione dell'assembly?

Modificare: La risposta di Da_m_n è corretta per la domanda che ho posto. Tuttavia, ero sotto il presupposto difettoso che solo perché Regasmo potesse registrare una libreria di tipo che era necessario registrare il TLB per fare riferimento a VB6. Quindi per ora sto registrando l'assembly e riferisco il TLB generato non registrato, generato da TLBEXP con i nomi fissi.

È stato utile?

Soluzione

Utilizzare regtlib.exe per registrare il file TLB generato TLBEXP.

Altri suggerimenti

regtlib.exe non è disponibile su piattaforme Win10. Utilizzare l'appropriato TlbExp.exe Come trovato nel corrispondente .NET SDK (EG "%ProgramFiles(x86)%\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.2 Tools\TlbExp.exe" "$(TargetDir)$(TargetFileName)" vedere https://docs.microsoft.com/en-us/dotnet/framework/tools/tlbexp-exe-type-library-exporter).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top