tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
366
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Cappaja Cappaja ist offline Mitglied Silber
    Registriert seit
    May 2009
    Ort
    Konstanz
    Beiträge
    85
    Hallo,

    Ich habe zwei Funktionen welche nur über System-Messages angsprochen werden sollen. Bei den Funktionen aus der Library mmsystem WIMData und MMWOMDone funktioniert alles einwandfrei. Die rotmarkierten werden allerdings schlichtweg nicht erkannt.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    BEGIN_MESSAGE_MAP(CWiwoDlg, CDialog)
        //GMS
        ON_MESSAGE(WIM_DATA, WIMData)  
        ON_MESSAGE(MM_WOM_DONE, MMWOMDone)
    [COLOR="Red"]   ON_MESSAGE(CM_OUPCOMPLETE, CMOupComplete)
        ON_MESSAGE(CM_INPCOMPLETE, CMInpComplete)[/COLOR]
        //GMS
    END_MESSAGE_MAP()

    In der Header-Datei werden den Funktionen die Struktur MSG mitgegeben.

    Code :
    1
    2
    3
    4
    5
    6
    7
    
        // Generierte Message-Map-Funktionen
        //{{AFX_MSG(CWiwoDlg)
        afx_msg void WIMData(MSG &Message);
        afx_msg void MMWOMDone(MSG &Message);
    [COLOR="Red"]   afx_msg void CM_OUPCOMPLETE(MSG &Messgae);
        afx_msg void CM_INPCOMPLETE(MSG &Message);[/COLOR]
        //}}AFX_MSG

    Der Define lautet wie folgt:

    Code :
    1
    2
    
    #define CM_INPCOMPLETE  (WM_APP + 102)
    #define CM_OUPCOMPLETE  (WM_APP + 103)

    Die Implementierung der Funktion ist ebenfalls einwandfrei, deswegen führe ich diese nicht explizit auf. Sieht jemand im Zusammenhang vielleicht einen Fehler? Die beiden Funktionen welche nur über das System aufgerufen werden, liefen zuvor ohne Probleme in einer Borland C Umgebung.
    Die Windows Message WM_APP hat offensichtlich etwas mit der Version von Windows zu tun. Ich benutze XP Professional, das lief auch zuvor darauf.

    Code :
    1
    2
    3
    
    #if(WINVER >= 0x0400)
    #define WM_APP                          0x8000
    #endif /* WINVER >= 0x0400 */

    Gruß Cappaja

    momentan bekomme ich nur an dieser Stelle

    Code :
    1
    2
    3
    4
    5
    
    // Generierte Message-Map-Funktionen
    //{{AFX_MSG(CWiwoDlg)
    afx_msg void CM_OUPCOMPLETE(MSG &Messgae);
    afx_msg void CM_INPCOMPLETE(MSG &Message);
    //}}AFX_MSG

    folgende Fehlermeldungen:

    wiwodlg.h(215) : error C2629: 'void (' unerwartet
    wiwodlg.h(215) : error C2238: Unerwartete(s) Token vor ';'

    das ergibt mir allerdings irgendwie keinen Sinn, vielleicht hilft es ja einem weiter.
     

  2. #2
    MCoder MCoder ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jul 2005
    Ort
    München
    Beiträge
    2.448
    Im Header müssen die Methoden (CMOupComplete und CMInpComplete) verwendet werden und nicht die Message-Defines.

    Gruß
    MCoder
     
    "The three chief virtues of a programmer are: Laziness, Impatience and Hubris."
    --- Larry Wall

  3. #3
    Cappaja Cappaja ist offline Mitglied Silber
    Registriert seit
    May 2009
    Ort
    Konstanz
    Beiträge
    85
    Das wars! Vielen Dank
     

Ähnliche Themen

  1. Fonts werden nicht erkannt
    Von airbond im Forum Photoshop
    Antworten: 4
    Letzter Beitrag: 12.05.08, 22:13
  2. Datentypen werden nicht erkannt
    Von Bamboocha_10 im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 11.01.08, 09:21
  3. SSL Zertifikate werden nicht erkannt
    Von SpockData im Forum Microsoft Windows
    Antworten: 4
    Letzter Beitrag: 29.12.07, 14:09
  4. Laufwerke werden nicht erkannt!
    Von TobGod im Forum Hardware
    Antworten: 0
    Letzter Beitrag: 07.01.05, 05:04
  5. 256MB-Ram werden nicht erkannt
    Von Moritz123 im Forum Hardware
    Antworten: 3
    Letzter Beitrag: 16.03.04, 20:20