Une classe est enregistrée dans la registery.
Comment savoir de quelle DLL vient cette classe ?
![]()
Une classe est enregistrée dans la registery.
Comment savoir de quelle DLL vient cette classe ?
![]()
Tu parles de classe COM? C'est bien simple:
La clé HKCR\CLSID\{CLSID de la classe}\InprocServer32 contient le chemin de la DLL.
S'il n'y a pas de clé InprocServer32, c'est qu'il s'agit d'un composant out-of-process au lieu d'un composant inproc.
Aussi, si la DLL est MSCOREE.DLL, c'est qu'il s'agit en réalité d'une classe .Net, et le nom de la DLL qui la contient est dans les sous-clés de InprocServer32.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Alors oui c'est bien une classe COM et la DLL n'est pas MSCOREE.DLL.
La classe dont je cherche la DLL s'appelle "pdfDistiller".
Par contre, je n'ai pas trouvé de clé InprocServer32... et donc aucun demain de DLL...![]()
Il y a donc sans doute un LocalServer32 à la place, et peut-être un InprocHandler32 s'il s'agit d'une classe OLE.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Bon j'ai reparcouru toute la registery mais je n'ai pas trouvé de
LocalServer32 ou InprocHandler32 en recherchant le nom de ma classe.
Par contre j'ai réussi à trouver la DLL (en peu par chance) grâce à visual studio (MVS) et l'ajout de préférences. Par contre quelques détails me taquinent.
1) Je n'ai donc toujours pas de moyen de trouver la DLL dont appartient la classe dans ma registery sans MVS
2) Dans MVS lors de l'ajout de préférence il faut bien spécifier une DLL ?
3) Pourquoi lorsque je veux ajouter la DLL d'acrobat distiller le chemin de acrodist.exe est spécifié et pas le chemin de la DLL ? (La DLL serait dans le .exe ?)
4) Une fois la DLL ajoutée aux préférences, il est possible de parcourir les méthodes et propriétés des classes grâce à l'explorateur d'objet. Maintenant supposons que je n'ai pas visual studio comment faire pour visualiser les méthodes et propriétés des classes de ma DLL ? Y a-t-il un moyen de faire cela avec les outils de base de window XP ?
PS: Pour info la DLL de la classe "PdfDistiller" est "Interop.ACRODISTXLib.dll"
Par nom de la classe, tu veux dire son ProgID?
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Partager