39 votes

Comment enregistrer une ancienne typelib (.tlb) sous Windows 7 ?

J'ai un nouveau PC fonctionnant sous Windows 7 et Visual Studio 2010, et je dois enregistrer une ancienne typelib (.tlb) pour l'interfacer avec une ancienne application existante. Cependant, regtlib.exe ne semble pas faire partie de Windows 7 (je ne pense pas qu'il faisait partie de Vista non plus), et regtlibv12.exe, disponible comme partie de Visual Studio 2005, semble avoir disparu avec Visual Studio 2008 (et certainement Visual Studio 2010).

Les forums et les articles de la base de connaissances de Microsoft font référence à RegAsm.exe. J'ai essayé RegAsm.exe, mais il ne peut créer et enregistrer un typelib qu'à partir d'une dll ou d'une assembly existante (que je n'ai pas). Je ne peux pas croire qu'il n'existe aucun moyen d'enregistrer un typelib existant sous Windows 7. Toute aide serait la bienvenue.

40voto

Marc Friedman Points 393

Eh bien, je suppose que je peux répondre à ma propre question (et à celle de tous ceux qui ont le même problème) :

Apparemment, regtlibv12.exe fait partie de Visual Studio 2010 (contrairement à ce que j'ai lu sur divers forums de Microsoft), mais il se trouve dans le dossier Windows \Microsoft.NET\Framework\v4.0.30139 (pas le dossier v2.0.50727). En utilisant cet exécutable, j'ai pu enregistrer avec succès l'ancienne typelib (.tlb).

2 votes

Juste pour ajouter quelques données... J'ai installé les frameworks suivants 1.0, 1.1, 2.0, 3.0, 3.5, 4.0. VS 6.0, 2005, 2008 et 2010 sont installés. J'ai regtlbv12.exe dans les dossiers des frameworks 2.0 et 4.0.

0 votes

De même, pour désenregistrer un fichier .tlb, utilisez : regtlibv12.exe -u myFile.tlb

8voto

T800 Points 41

Il est livré avec .Net installation du framework. Sur ma machine, je l'ai trouvé comme :

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\regtlibv12.exe
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regtlibv12.exe

6 votes

C'est drôle, j'ai installé ces frameworks et d'autres encore. regtlibv12.exe est introuvable. Bien que je voie un RegAsm.exe et j'ai lu que des personnes l'utilisaient pour essayer de s'enregistrer.

4voto

Il existe également C:\WINDOWS\REGTLIB.EXE qui semble faire partie d'une installation standard de Windows 7.

3 votes

Pas sur mon Windows 7.

1 votes

S'il s'agit de Windows 7 64bit, essayez de vérifier ici : C:\Windows\SysWOW64\URTTEMP

0 votes

Je sais que je suis un peu en retard et que la question concerne Windows 7, mais je pensais juste mentionner que c'est la bonne réponse pour Windows 10 Professional 64 bit 21H2.

1voto

Ecyrb Points 1024

D'un Developer Command Prompt for VS2013 vous pouvez utiliser l'option regtlib.exe commandement.

Pour trouver l'invite de commande du développeur pour VS2013, vous pouvez essayer de regarder sous Démarrer -> Tous les programmes -> Visual Studio 2013 -> Invite de commande du développeur pour VS2013.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X