mcallan
Messages postés17Date d'inscriptionmardi 6 mai 2003StatutMembreDernière intervention28 janvier 2011
-
5 juin 2008 à 20:25
mcallan
Messages postés17Date d'inscriptionmardi 6 mai 2003StatutMembreDernière intervention28 janvier 2011
-
6 juin 2008 à 13:59
Bonjour,
Quelqu'un pourrait il m'aider a comprendre mon probleme suivant ?
Dans le cadre d'un systeme de plug-in , je dois charger des dlls.
J'essaye de tester les cas limites.
J'ai cree 100 dlls quasi identiques contenant une fonction
int function_X(void)
{
return X;
}
les dlls se nomment plugX.dll
avec X variant de 1 à 100.
dans mon programme , j'essaye de charger via a LoadLibrary les dlls. cela donne quelques choses comme ça :
HINSTANCE plugins[100]; // pointeur dans mon code
int i=0;
for (i=1;i<101;i++)
{
plugins[i] = LoadLibrary(<nom dll>);
}
Le probleme est que pour i = 80 et plus le LoadLibrary echoue.
Ce n'est pas la dll qui est endommagé j'ai verifié.
GetLastError retourne le code 1114 (Une routine d'initialisation d'une librairie dynamique (DLL) a échoué)
Ma question est : est ce normale et comment cela se fait que l'on ne puisse pas chargé plus de dlls.
Si vous avez des refs. expliquant cette limitation (liens MSDN ?) , je suis preneur
mcallan
Messages postés17Date d'inscriptionmardi 6 mai 2003StatutMembreDernière intervention28 janvier 2011 6 juin 2008 à 06:04
:D
Je ne souhaite pas en charger 100, je souhaite en charger le maximum.
Ce que j'ai inscrit n'est que du "pseudo - code" ...
Dans mon "vrai" code , il s'agit d'une reeallocation dynamique
(chargement d'un fichier xml contenant une liste de dll ...)
Et je voulais connaitre s'il y avait une limite.
80 ca ne me semble pas beaucoup ...