Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

09.10.2014, 02:19

SFML 2.1 verhindern das Debug Fenster sich öffnet?

Guten Morgen,

ich habe mittlerweile ein fast fertiges Spiel programmiert, nun möchte ich es an Freunde verschicken.
Leider öffnet sich bei der exe neben dem SFML Fenster leider auch immer das schwarze Debug Fenster und zeigt dort einige Zeilen an, die ich zum Debuggen benutzt hatte.
Wie kann ich verhindern, dass sich dieses Fenster öffnet? Bzw. wie kann ich es schließen (per Code) ohne das sich das SFML Fenster auch schließt??

Ich benutze Visual Studio Express 2012 für Windows-Destop :)

LG Doktor Gauß

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

2

09.10.2014, 06:39

Moin.

Antworten direkt aus Google übernommen:

Entweder:

C-/C++-Quelltext

1
2
HWND hwnd = GetConsoleWindow();
ShowWindow(hwnd, 0);


Oder:
Projects settings/Configuration properties/Linker/System/SubSystem = Windows (/SUBSYSTEM:WINDOWS)
Ersetze den folgenden Code

C-/C++-Quelltext

1
2
3
4
5
int main(int argc, char *argv[])
    {
         QApplication app(argc, argv);
...
    }
durch:

C-/C++-Quelltext

1
2
3
4
5
6
int WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, char*, int nShowCmd)
    {
        int argc = 0;
        QApplication app( argc, 0 );
...
     }



Das ist übrigens kein Debug-Fenster, sondern die Konsole. Das liegt daran, dass Dein SFML-Programm als Konsolen-Anwendung geschrieben wurde und aus der Konsole heraus ein Fenster öffnet. Das lässt sich durch die beiden Wege oben ändern, indem man die Konsole entweder versteckt oder eine echte Windows-Anwendung daraus macht.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

3

09.10.2014, 14:06

Vielen Dank! Das klappt sehr gut.

Dann habe ich das wahrscheinlich nicht gefunden wegen der falschen Vokabel.

Liebe Grüße
Doktor Gauß

eXpl0it3r

Treue Seele

Beiträge: 386

Wohnort: Schweiz

Beruf: Professional Software Engineer

  • Private Nachricht senden

4

09.10.2014, 16:23

Und hier dachte ich BlueCobold kennt SFML... :|

Die Lösungen sind okay, aber SFML bringt die Option auch mit sich. SUBSYSTEM auf Window setzten und sfml-main linken und das Fenster ist weg. ;)
Blog: https://dev.my-gate.net/
—————————————————————————
SFML: https://www.sfml-dev.org/
Thor: http://www.bromeon.ch/libraries/thor/
SFGUI: https://github.com/TankOs/SFGUI/

Fireball

Alter Hase

Beiträge: 415

Wohnort: Werne

Beruf: Dipl. Inf.

  • Private Nachricht senden

5

11.10.2014, 22:12

Auf diese Art und Weise hab ich damals meinen ersten Keylogger programmiert. Console weg und fleißig mit geschrieben. Allerdings öffnet sich das Fenster kurz und verschwindet dann gleich wieder.

Werbeanzeige