C++ will Wert von importierter Funktion nicht zuweisen



  • Hi ich mal wieder. Folgender Quellcode...

    struct TDLLInfo
    {
      char IDArray[256];  //holds identifier of DLL
      bool SupportGfxLCD; //does this DLL support graphical LCDs?
      bool SupportTxtLCD; //does this DLL support text
      bool SupportSlider; //does this DLL support the slider
      BYTE CCharWidth;    //custom char width in pixels
      BYTE CCharHeight;   //custom char height in pixels
      BYTE FontPitch;     //fontpitch of LCD in pixels
    };  
    
    typedef TDLLInfo (__stdcall *TDLL_DLL_GetInfo)(void);
    
    TDLL_DLL_GetInfo DLL_GetInfo;
    TDLLInfo value;
    
    ...
    
    hinst = LoadLibrary("hd44780.dll");
    DLL_GetInfo = (TDLL_DLL_GetInfo)GetProcAddress(hinst,TEXT("DLL_GetInfo"));
    value = DLL_GetInfo;
    

    führt bei mir zu der Fehlermeldung

    error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'struct TDLLInfo (__stdcall *)(void)' (or there is no acceptable conversion)

    Diese Fehlermeldung betrifft die Zeile mit der Zuweisung value = ....

    Warum geht das so nicht wie ich das hier vorhabe? Thx im Vorraus.



  • value = DLL_GetInfo**()**



  • value = DLL_GetInfo();



  • *extrem kopfklatsch*

    manchmal sieht man den wald eben vor lauter c++ bäumen nicht mehr, ich bin halt delphi progger da braucht man die klammern nicht, thx thx thx


Anmelden zum Antworten