J'ai découvert que je ne peux pas charger les DLL 32 bits en utilisant ma version d'Office 2007. J'utilise Vista 64 bits et je suppose que Office est également en 64 bits mode. Est-il possible de démarrer Excel en mode 32 bits Ou Existe-t-il un moyen de déclarer une DLL en utilisant VB pour charger une DLL 32 bits?Chargement de 32 bits DLL en utilisant Excel 2007 (version Vista 64 bits)
Comme je n'ai pas le code source de certaines DLL que j'utilise, je ne peux pas simplement recompiler des données pour le mode 64 bits. Je pense donc que mes options sont de forcer Excel à fonctionner en mode 32 bits ou de déclarer la DLL que j'utilise comme une DLL 32 bits même si mon environnement est 64 bits. L'erreur que j'obtiens est "DLL introuvable" même si la DLL est en fait là.
Vous trouverez ci-dessous un exemple de déclaration. Y a-t-il un attribut 32 bits pour cette instruction?
Private Declare Function ESQMain Lib "ESQuotes2.dll" Alias "_ESQMain @ 12" _ (ByVal func As Long, ByVal TICKER_SYMBOL As String, ByVal Résultat As String) As Integer
Cette question est mauvaise. J'ai découvert qu'il n'y a pas de version 64 bits de bureau, donc mon vrai problème est que Excel ne chargera tout simplement pas ou ne peut pas trouver ma DLL, peu importe où je l'ai mis. –
La réponse s'est avérée être qu'Excel 2007 recherche maintenant dans différents endroits pour la DLL. J'ai découvert ceci en téléchargeant le moniteur de processus de sysinternals et ai noté qu'il ne regarde pas dans le même dossier que le classeur et ne recherche plus dans windows \ system32 non plus. –