BRAUCHE [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 + 2*GetSystemMetrics( 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>stdafx.cpp
    1>Kompilieren...
    1>UUltiris.cpp
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(5) : fatal error C1083: Datei (Include) kann nicht geöffnet werden: "ddutil.h": No such file or directory
    1>Das Buildprotokoll wurde unter "file://c:\Users\Marco\Documents\Visual Studio 2008\Projects\UUltiris\UUltiris\Debug\BuildLog.htm" gespeichert.
    1>UUltiris - 1 Fehler, 0 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

    Es kann ja sein das ich sogar hier etwas falsch gemacht habe^^

    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 😃



  • Danke, die Fehler waren lecker! 🤡



  • statt:
    #include "ddutil.h"
    schreib mal:
    #include <ddutil.h>



  • Softwaremaker schrieb:

    statt:
    #include "ddutil.h"
    schreib mal:
    #include <ddutil.h>

    Was soll das bringen?



  • Also die Date "ddutil.h" wird wohl zum Quellcode deines Programmd gehören. Wie die Fehlermeldung schon sagt: No such file or directory -> die Datei fehlt dir dann wohl. Das hat jetzt nichts mit den Pfadangaben zu tun.



  • hustbaer schrieb:

    Softwaremaker schrieb:

    statt:
    #include "ddutil.h"
    schreib mal:
    #include <ddutil.h>

    Was soll das bringen?

    Stimmt, mein Hinweis bringt nichts, hab nochmal nachgeschaut:
    <datei> sucht nur in den angegebenen Include-Verzeichnissen (Einstellungen)
    "datei" sucht zuerst im Projektverzeichnis und dann in den angegebenen Include-Verzeichnissen

    Dann liegts wohl daran, dass die Datei nicht vorhanden ist (dass hätte der Org-Poster aber eigentlich selbst herausfinden müssen).



  • Ja thx erstmal aber kann mir wer Tipps oder Huilfe zu meinem Problem geben?



  • Na der Präprozessor findet die "ddutil.h" nicht, und kann sie deshalb nicht zu deinem Code hinzufügen.

    Suche mit der Windows-Suche die Datei "ddutil.h" und kontrolliere ob der Ort bei den Include-Verzeichnissen angegeben ist.
    Oder schreibe den Ort bei include mit hin:
    #include "C:\meinordner\blabla\ddutil.h"



  • Danke Ich habe die fehlenden .h dateien einfach in den DirectX Ordner Include
    Hineinkopiert: http://img23.imageshack.us/my.php?image=96551113.jpg
    Jetzt macht er folgende 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(63) : error C2065: 'IDI_MAIN': nichtdeklarierter Bezeichner
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(64) : error C2065: 'IDI_MAIN': nichtdeklarierter Bezeichner
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(67) : error C2065: 'IDR_MENU': nichtdeklarierter Bezeichner
    1>c:\users\marco\documents\visual studio 2008\projects\uultiris\uultiris\uultiris.cpp(74) : error C2065: 'IDR_ACCEL': nichtdeklarierter Bezeichner
    1>Das Buildprotokoll wurde unter "file://c:\Users\Marco\Documents\Visual Studio 2008\Projects\UUltiris\UUltiris\Debug\BuildLog.htm" gespeichert.
    1>UUltiris - 4 Fehler, 0 Warnung(en)
    ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

    Was kann ich jetzt tun Danke nochmal für die Bisherige Hilfe
    Killerooo


Anmelden zum Antworten