DLL et instances... - C++ - Programmation
Marsh Posté le 16-01-2004 à 16:21:38
bordel!
A+,
Marsh Posté le 16-01-2004 à 16:32:35
au LoadLibrary, si tu rappelles ta dll pour le meme processus, il va te renvoyer le meme HMODULE et ne pas le recharger, il va augmenter un compteur interne.
tu peux par contre instancier plusieurs fois les objets de ta dll ?
Marsh Posté le 16-01-2004 à 16:41:30
Baffos a écrit : formidable |
Ben j'ai trouve plein d'articles expliquant comment faire en 5s avec google. Aide toi et le forum t'aidera, mais si tu ne fais pas d'efforts, ne comptes pas sur nous.
A+,
Marsh Posté le 16-01-2004 à 16:42:57
merci pour ta reponse BlackGoddess !
par contre je ne comprends pas ce que tu veux dire par instancier plusieurs fois les objets de ma dll ... tu veux dire que c'est la DLL qui s'occuperait de creer de nouveaux objets ? si tel est le cas comment pourrait elle identifier/differencier les differents appels ?
Marsh Posté le 16-01-2004 à 16:44:11
pour gilou : Un article parlant du probleme de la double-instantiation ?
Marsh Posté le 16-01-2004 à 17:03:37
Tu fais "dll shared variable" sous google.
Et hop, tu obtiens:
http://www.codeproject.com/dll/dat [...] print=true
http://msdn.microsoft.com/library/ [...] lls.3f.asp
http://www.lesher.ws/rebase.html
etc etc
A+,
Marsh Posté le 16-01-2004 à 17:26:45
gilou : formidable encore. Je voulais exactement le contraire : La meme application qui créé 2 instances d'un DLL et qui obtient une zone memoire pour chacune d'entre elle.... Mais merci quand meme
Marsh Posté le 16-01-2004 à 19:29:05
bin ... tu ne dois pas passer par le LoadLibrary pour differencier des instances d'une dll, mais par contre utiliser des objets que tu instancies plusieurs fois a l'interieur de ta dll
par exemple :
Code :
|
essaie de faire le parallèle entre une dll contenant des fonctions, et un objet contenant des méthodes pour remplacer ta dll par une classe.
puis apres tu peux encapsuler des appels à la dll dans une classe pour mieux gérer la destruction de tes objets construits / le freelibrary s'il y a une exception
Marsh Posté le 16-01-2004 à 19:34:28
Creer deux instances d'une DLL, ca veut dire quoi??
Loader plus d'une fois la librairie en memoire?? ca marchera pas IMHO tout au plus auras tu un refcount incrementé.
Je vois pas du tout l'interet de passer par une dll pour faire ce que tu veux. Tu pourrais peut etre expliquer un peu mieux ton probleme afin qu'on lui apporte une solution adaptee.
Si deja tu avais pose de maniere claire ton pb au debut du topic, ca m'aurais evite de te filer des liens inutiles.
A+,
Marsh Posté le 16-01-2004 à 20:15:51
gilou a écrit : |
moi j'avais tout a fait compris ce qu'il voulait
Marsh Posté le 16-01-2004 à 20:49:30
Oui, en relisant, un sans m'avais echappé.
Mais bon si on savait ce qu'il veut exactement faire, on comprendrait pourquoi il pose une question aussi zarbi a priori.
A+,
Marsh Posté le 16-01-2004 à 14:31:52
Bonjour,
j'ai un probleme et je ne trouve pas de solution
quand on realise un LoadLibreary() on charge une premiere fois une DLL. Cependant j'aurai voulu charger deux fois la meme DLL, sans que les variable soient communes à mes deux instances. Je n'y arrive pas... que faire ?? (chnif)
help me