Stapelfehler!?



  • Hi,

    habe folgendes kleines Problem: Folgender Quellcode verursacht bei mir einen "Stapelfehler":

    void Funktion(void)
    {
    
      Typ *pTyp = GetPointer(...);
    
      stSubMenuPt.cbSize = sizeof(MENUITEMINFO);
    
      GetMenuItemInfo(pTyp->hHandle, 0, true, &stSubMenuPt);
    
      stSubMenuPt.fMask = MIIM_STATE;
      stSubMenuPt.fState = MFS_DISABLED | MFS_UNHILITE;
    
      SetMenuItemInfo(pTyp->hHandle, 0, true, &stSubMenuPt);
    }
    

    Das Programm stürzt beim Aufruf von SetMenuItemInfo() ab, schuld ist der erste Parameter, es ist egal, ob ich vorher GetMenuItemInfo() aufrufe oder nicht.

    Dabei ist sowohl pTyp gültig als auch hHandle.

    Wieso entsteht dieser Fehler und was kann man dagegen machen?



  • Also so wie Du es schreibst würde ich sagen:

    Der erste Parameter ist schuld.
    Daegen tun kannst Du :

    Prüfen was der erste Parameter sein sollte und das korregieren.

    Zumal hat das Problem nichts mit dem Standard zu tun.


Anmelden zum Antworten