Problem mit Datentyp INPUT unter VC 6.0



  • Hallo.

    In meinem aktuellem VC 6.0 Projekt bekomme ich die Fehlermeldung
    'INPUT' : nichtdeklarierter Bezeichner
    Mein Quellcode sieht wie folgt aus:

    INPUT daten[2];
    
    	daten[0].type = INPUT_KEYBOARD;
    	daten[0].ki.dwFlags = 0;
    	daten[0].ki.wVk = 145;
    	daten[0].ki.wScan = 145;
    	daten[0].ki.dwExtraInfo = GetMessageExtraInfo();
    	daten[0].ki.time = GetMessageTime();
    
    	daten[1].type = INPUT_KEYBOARD;
    	daten[1].ki.dwFlags = KEYEVENTF_KEYUP;
    	daten[1].ki.wVk = 145;
    	daten[1].ki.wScan = 145;
    	daten[1].ki.dwExtraInfo = GetMessageExtraInfo();
    	daten[1].ki.time = GetMessageTime();
    	SendInput(2,daten,sizeof(INPUT));
    

    Unter Visual Studio 2005 bekomme ich keine Fehlermeldung.
    Zum testen habe ich auch eine neues Projekt unter VC 6.0 erstellt. Hat auch nichts gebracht. Die notwendige Header winuser.h habe ich jedesmal includiert.

    Die Intellisens unter VC6.0 hat beim programmieren die Variablen der Struktur INPUT angezeigt.

    Weiß jemand, woran es liegen kann? Will mein Projekt nicht auf VS 2005 umstellen deswegen.

    Danke.

    Oli_1977



  • Oli_1977 schrieb:

    Die notwendige Header winuser.h habe ich jedesmal includiert.

    Das löst dein Problem vielleicht nicht, aber winuser.h sollst du nicht inkludieren. Der wird automatisch über windows.h eingebunden.

    MSDN schrieb:

    Declared in Winuser.h, include Windows.h



  • Du musst ein aktuellen PSDK installieren... das von VC6 ist schon 13 Jahre alt... auch wurde der Support für VC6 schon längst eingestellt...

    Das letzte PSDK für VC6 ist Feb2003:
    http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm



  • Hallo.

    Ich habe die Lösung.
    In der stdafx.h muss als erstes

    #define _WIN32_WINNT 0x0501
    

    stehen.

    Danch hat es funktioniert.

    Danke für Deine Hilfe.

    Oli_1977


Log in to reply