Windows Programme je nach Compiler verschieden?



  • #include <windows.h>
    
    /* Declare Windows procedure */
    LRESULT CALLBACK WindowProcedure(HWND, UINT, WPARAM, LPARAM);
    /* Make the class name into a global variable */
    char szClassName[ ] = "WindowsApp";
    int WINAPI WinMain(HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nFunsterStil)
    
    {
        HWND hwnd;               /* This is the handle for our window */
        MSG messages;            /* Here messages to the application are saved */
        WNDCLASSEX wincl;        /* Data structure for the windowclass */
    
        /* The Window structure */
        wincl.hInstance = hThisInstance;
        wincl.lpszClassName = szClassName;
        wincl.lpfnWndProc = WindowProcedure;      /* This function is called by windows */
        wincl.style = CS_DBLCLKS;                 /* Catch double-clicks */
        wincl.cbSize = sizeof(WNDCLASSEX);
    
        /* Use default icon and mouse-pointer */
        wincl.hIcon = LoadIcon(NULL, IDI_APPLICATION);
        wincl.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
        wincl.hCursor = LoadCursor(NULL, IDC_ARROW);
        wincl.lpszMenuName = NULL; /* No menu */
        wincl.cbClsExtra = 0;                      /* No extra bytes after the window class */
        wincl.cbWndExtra = 0;                      /* structure or the window instance */
        /* Use light-gray as the background of the window */
        wincl.hbrBackground = (HBRUSH) GetStockObject(LTGRAY_BRUSH);
    
        /* Register the window class, if fail quit the program */
        if(!RegisterClassEx(&wincl)) return 0;
    
        /* The class is registered, let's create the program*/
        hwnd = CreateWindowEx(
               0,                   /* Extended possibilites for variation */
               szClassName,         /* Classname */
               "Windows App",         /* Title Text */
               WS_OVERLAPPEDWINDOW, /* default window */
               CW_USEDEFAULT,       /* Windows decides the position */
               CW_USEDEFAULT,       /* where the window ends up on the screen */
               544,                 /* The programs width */
               375,                 /* and height in pixels */
               HWND_DESKTOP,        /* The window is a child-window to desktop */
               NULL,                /* No menu */
               hThisInstance,       /* Program Instance handler */
               NULL                 /* No Window Creation data */
               );
    
        /* Make the window visible on the screen */
        ShowWindow(hwnd, nFunsterStil);
        /* Run the message loop. It will run until GetMessage( ) returns 0 */
        while(GetMessage(&messages, NULL, 0, 0))
        {
               /* Translate virtual-key messages into character messages */
               TranslateMessage(&messages);
               /* Send message to WindowProcedure */
               DispatchMessage(&messages);
        }
    
        /* The program return-value is 0 - The value that PostQuitMessage( ) gave */
        return messages.wParam;
    }
    
    /* This function is called by the Windows function DispatchMessage( ) */
    LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
    {
        switch (message)                  /* handle the messages */
        {
               case WM_DESTROY:
               PostQuitMessage(0);        /* send a WM_QUIT to the message queue */
               break;
               default:                   /* for messages that we don't deal with */
               return DefWindowProc(hwnd, message, wParam, lParam);
        }
        return 0;
    }
    

    Das hier ist der standardmäßig von Dev-C++ erstelle Code zum erstellen eines einfach Fensters. (Sorry, das mit dem C++ - Code klappt nicht, da kommt ein Interner Serverfehler ...)
    Wenn ich nun mit dem Borland Compiler kompilieren möchte kommen diese Fehler aus denen ich als Anfänger natürlich nicht schlau werde ... :
    http://www.freepgs.com/johannesmaier/Errors1.JPG

    Btw: Du bist doch auf dem Delphi-Forum oder? 😉



  • du musst deinem boraldn-compiler npch irgendwie beibringen, dass du eine Windows-Application erstellen willst. Dein Compiler sucht nach main() was er aber nicht findet, und main() ist nur bei Konsole.



  • Dieser Thread wurde von Moderator/in flenders aus dem Forum WinAPI in das Forum Andere Compiler verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • so sollte es funktionieren

    bcc32 uTest.cpp -tW



  • @Dragon: Nein, da kommen haargenau die gleichen Meldungen.

    @abcd: Und wie mach ich das?

    Achja, genauso stellt sich das Problem ja, wenn ich mit Dev-C++ eine Windows-Applikation erstelle, und dort den Code aus dem C++-Kompendium abtippe ... Dann kommen dort auch immer Fehler ...



  • Bist du dir sicher das die

    Unresolved external '_main'...

    Meldung immer noch kommt, wenn du -tW benutzt?

    Normalerweise müsste die nicht mehr kommen. Nur noch die Warnungen...



  • Ja bin ich! Sieh selbst ;):

    Hmm mein Webspace ist gerade down, sobald er wieder geht häng ich das Bild mal an, aber ich hab es gerade nochmal versucht und der Fehler kam wieder ...



  • Normalerweise schreibt man die Optionen vor die Files.



  • Spiel mal dieses Tutorial hier durch, bis du mit Erfolg ein Fensterprog hast:
    http://www.webnotes.org/bcc55eng.htm

    Achte insbesondere auf die richtig eingerichteten CFG Dateien!



  • Hey vielen Dank 😉
    Ich hab den Fehler: Ihr habt mir gesagt ich solle schreiben "bcc32 uTest.cpp -tW" aber mit "bcc32 -tW uTest.cpp" klappt es einwandfrei! :p 😉
    Also vielen Dank nochmal, damit hat sich auch die ursprüngliche Frage erledigt 🙂


Anmelden zum Antworten