Celui-ci me rend fou. J'ai essayé tout ce que je pouvais penser. Voici les parties pertinentes du code DirectInput.DirectInput Non résolu Symbole externe
BOOL CALLBACK EnumDevicesCallback(const DIDEVICEINSTANCE* DeviceInfo, VOID* Context);
if(DirectInput8Interface == DI_OK)
{
DirectInput8InterfacePointer->EnumDevices(
DI8DEVCLASS_GAMECTRL,
(LPDIENUMDEVICESCALLBACKA) EnumDevicesCallback,
NULL,
DIEDFL_ATTACHEDONLY);
}
Lorsque je tente de compiler, je reçois l'erreur:
unresolved external symbol "int __stdcall EnumDevicesCallback(struct DIDEVICEINSTANCEA const *,void *)" ([email protected]@[email protected]@[email protected]) referenced in function [email protected]
Comme vous pouvez le voir, le symbole externe, le compilateur ne peut pas trouver est lié au paramètre DIDEVICEINSTANCE de la fonction EnumDevicesCallback. Cela ne devrait pas être, car j'ai inclus dinput.h et lié à dinput8.lib et à dxguid.lib. J'ai même essayé de définir DIDEVICEINSTANCE dans mon propre code et j'ai reçu un message disant qu'il était en conflit avec une définition précédente.
Que pourrait signifier ce message d'erreur?
Utilisez-vous un compilateur C ou C++? Ils ne sont pas les mêmes. –
Copie possible de [Qu'est-ce qu'une erreur de symbole externe non résolue/non résolue et comment la réparer?] (Http://stackoverflow.com/questions/12573816/what-is-an-defined-reference-unresolved-external- error-symbol-and-how-do-i-fix) –
Vous êtes sûr d'avoir fourni la définition de la fonction 'BOOL CALLBACK EnumDevicesCallback (const DIDEVICEINSTANCE * DeviceInfo, VOID * Context);' dans votre programme? –