Fehler [HILFE]



  • Hallo ich hatte mir das Buch Spieleprogrammierung mit direktX und C++ von nem Kumpeg geliehen gehabt
    Ich hatte noch einen Quellcode und wollte den gerne Erstellen:
    #include <stdio.h>
    #include <ddraw.h>
    #include <dsound.h>
    #include <windows.h>
    #include "ddutil.h"
    #include "dsutil.h"
    #include "resource.h"

    const int ultris_nettobreite = 360; // Breite des Inneren des Haupfensters
    const int ultris_nettohoehe = 520; // Hoehe des Inneren des Hauptfensters
    int ultris_bruttobreite; // Breite des gesamten Haupfensters (incl. Rahmen)
    int ultris_bruttohoehe; // Hoehe des gesamten Haupfensters (incl. Rahmen)

    HINSTANCE ultris_instance; // Instanz der Ultris Applikation
    HWND ultris_window; // Das Hauptfenster von Ultris
    HMENU ultris_menu; // Das Menu von Ultris

    /*
    ** ultris_windowhandler
    */
    LRESULT CALLBACK ultris_windowhandler( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
    {
    switch(msg)
    {
    case WM_COMMAND:
    switch( LOWORD( wParam))
    {
    case IDM_EXIT:
    PostMessage( hWnd, WM_CLOSE, 0, 0);
    return 0;
    }
    break;
    case WM_GETMINMAXINFO:
    ((MINMAXINFO *)lParam)->ptMinTrackSize.x = ((MINMAXINFO *)lParam)->ptMaxTrackSize.x = ultris_bruttobreite;
    ((MINMAXINFO *)lParam)->ptMinTrackSize.y = ((MINMAXINFO *)lParam)->ptMaxTrackSize.y = ultris_bruttohoehe;
    return 0;
    case WM_DESTROY:
    PostQuitMessage( 0);
    return 0;
    }
    return DefWindowProc(hWnd, msg, wParam, lParam);
    }

    /*
    ** WinMain
    */
    int APIENTRY WinMain( HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR pCmdLine, int nCmdShow)
    {
    MSG msg;
    HACCEL acc;
    WNDCLASSEX wcx;

    ultris_instance = hInst;

    wcx.cbSize = sizeof( wcx);
    wcx.lpszClassName = TEXT( "Ultris");
    wcx.lpfnWndProc = ultris_windowhandler;
    wcx.style = CS_VREDRAW | CS_HREDRAW;
    wcx.hInstance = hInst;
    wcx.hIcon = LoadIcon( hInst, MAKEINTRESOURCE( IDI_MAIN));
    wcx.hIconSm = LoadIcon( hInst, MAKEINTRESOURCE( IDI_MAIN));
    wcx.hCursor = LoadCursor( NULL, IDC_ARROW);
    wcx.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
    wcx.lpszMenuName = MAKEINTRESOURCE( IDR_MENU);
    wcx.cbClsExtra = 0;
    wcx.cbWndExtra = 0;

    if( !RegisterClassEx( &wcx))
    return 0;

    acc = LoadAccelerators( hInst, MAKEINTRESOURCE(IDR_ACCEL));

    ultris_bruttohoehe = ultris_nettohoehe + 2GetSystemMetrics( SM_CYSIZEFRAME)
    + GetSystemMetrics( SM_CYMENU)
    + GetSystemMetrics( SM_CYCAPTION);
    ultris_bruttobreite = ultris_nettobreite + 2
    GetSystemMetrics( SM_CXSIZEFRAME);

    ultris_window = CreateWindowEx( 0, TEXT( "Ultris"), TEXT( "Ultris"), WS_OVERLAPPEDWINDOW & ~WS_MAXIMIZEBOX,
    CW_USEDEFAULT, CW_USEDEFAULT,
    ultris_bruttobreite, ultris_bruttohoehe, NULL, NULL, hInst, NULL);
    if( !ultris_window)
    return 0;

    ultris_menu = GetMenu( ultris_window);

    MoveWindow( ultris_window, (GetSystemMetrics(SM_CXSCREEN)-ultris_bruttobreite)/2,
    (GetSystemMetrics(SM_CYSCREEN)-ultris_bruttohoehe)/2,
    ultris_bruttobreite, ultris_bruttohoehe, TRUE);

    ShowWindow( ultris_window, nCmdShow);

    while( TRUE)
    {
    if( PeekMessage( &msg, NULL, 0, 0, PM_NOREMOVE))
    {
    if( GetMessage( &msg, NULL, 0, 0 ) == 0)
    return 0; // Message ist WM_QUIT

    if( TranslateAccelerator( ultris_window, acc, &msg) == 0)
    {
    TranslateMessage( &msg);
    DispatchMessage( &msg);
    }
    }
    else
    {
    // Hier koennen wir uns um das Spiel kuemmern
    }
    }
    }

    Der Macht folgenede Fehlermeldungen:
    1>------ Erstellen gestartet: Projekt: UUltiris, Konfiguration: Debug Win32 ------
    1>Kompilieren...
    1>UUltiris.cpp
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(1) : warning C4627: "#include <stdio.h>": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
    1> "stdafx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(2) : warning C4627: "#include <ddraw.h>": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
    1> "stdafx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(3) : warning C4627: "#include <dsound.h>": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
    1> "stdafx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(4) : warning C4627: "#include <windows.h>": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
    1> "stdafx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(5) : warning C4627: "#include "ddutil.h"": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
    1> "stdafx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(6) : warning C4627: "#include "dsutil.h"": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
    1> "stdafx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(7) : warning C4627: "#include "resource.h"": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
    1> "stdafx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(112) : fatal error C1010: Unerwartetes Dateiende während der Suche nach dem vorkompilierten Header. Haben Sie möglicherweise vergessen, im Quellcode "#include "stdafx.h"" einzufügen?
    1>Das Buildprotokoll wurde unter "file://c:\Users\Marco\Documents\Visual Studio 2008\Projects\UUltiris\UUltiris\Debug\BuildLog.htm" gespeichert.
    1>UUltiris - 1 Fehler, 7 Warnung(en)
    ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

    Es geht mir hier nicht um das Programm den Quellcode sondern um das Prinzip warum es nicht klappt habe schon die Direkt X sdk August 2007 Installiert
    und die Psdk for Windows Server 2007.
    Ich habe sie schon beim Visual Studio eingetragen:

    Bin Verzeichnisse:
    http://img16.imageshack.us/my.php?image=54306594.jpg

    Include:
    http://img3.imageshack.us/my.php?image=54919373.jpg

    Bibliothekdateien:
    http://img3.imageshack.us/my.php?image=83086230.jpg

    Kann mir wer sagen was ich falsch gemacht habe mir helfen
    nur zur Info Ich habe in c++ noch nicht fertig gelernt ich möchte nur sehenob das Buch gut ist Also bitte keine dummen Anspielungen
    THX im Vorraus
    Killerooo

    ----------------------------------
    Wenn ihr Fehler findet dürft ihr sie Essen 😃



  • Benutz mal die [cpp]-Tags...



  • Falsches Forum, das gehört entweder ins WinAPI oder (Vielleicht etwas mehr) ins IDE-Forum.



  • Schalt in den Projektegenschaften mal vorkompilierte Header aus. (Ich weiss nicht auswendig, wo genau, irgendwas mit Einstellungen->C++->Präprozessor, glaube ich)



  • Die Fehlermeldung sagt ja relativ viel über den Fehler aus. Sie stellt sogar noch eine Frage...

    Entweder du schaltest den vorkompilierten Header projektweit ein und inkludierst diesen dann in jeder Quelldatei, oder du schaltest sie aus (Projekt-Eigenschaften -> Konfigurationseinstellungen -> C/C++ -> Vorkompilierte Header).

    Benutz nächstes Mal CPP-Tags, lass irrelevanten Code weg und wähle einen sinnvollen Threadtitel.


Anmelden zum Antworten