Masquer la console de Windows de l'Application
J'ai une application Qt, et quand je lance cette application, il y a une console ouverture derrière elle. Dans le développement, c'est sympa parce que je vois debug sorties sur la console, mais lorsque je veux donner à ce fichier exécutable pour le client, il devrait y avoir pas de fenêtre de console.
comment puis-je le cacher?
(Je suis à l'aide de Visual Studio 2008)
- La meilleure façon est de faire un Projet QT et l'utilisation QVTKWidget.
Vous devez vous connecter pour publier un commentaire.
Il semble que votre linker configuration est incorrecte. Cliquez-droit sur le projet, les Propriétés de l'éditeur de liens, Système, sous-système de réglage. Assurez-vous que "Windows" est sélectionné, pas de "Console".
Et, changer de main() WinMain().
main()
dans Propriétés -> Linker -> Avancé> point d'EntréeWindows
il n'est pas arrêter, même si je fixe lemain
/WinMain
question.Dans le projet de construire linker options
Ou utilisez la commande suivante #pragma dans le fichier source avec le
int main(...)
Vous pouvez vous débarrasser de la console en appelant le:
j'utilise cette méthode et cela a fonctionné
FreeConsole
n'a pas ce problème.Solution suivante 😉
Env: WixXP x64, msvs 2008, Qt v4.5.3
Projets paramètres/propriétés de Configuration/gestionnaire/Système/sous-système = Windows (/sous-système:WINDOWS)
Mais Pour x64 il y a erreur d'éditeur de liens:
LNK2019: symbole externe non résolu _WinMain référencé dans la fonction _WinMainCRTStartup"
Pour l'éviter
Remplacer le code suivant:
par
Il fonctionne très bien pour les deux - Win32 et les plates-formes x64.
Si vous utilisez Propriétés->de l'éditeur de liens->Système->sous-système | Windows
Et d'obtenir une erreur de l'éditeur de liens.
Vous pouvez regarder de l'éditeur de liens->Avancé-> Point d'Entrée
et définissez la valeur sur le nom de votre "main" de la fonction.
Qui est votre Point d'Entrée devient le principal, si votre principale fonction est un "principal".
Peut être la meilleure option sera de ne pas simplement supprimer (comme Andy M a suggéré), mais modifier *.pro fichier en ajoutant quelque chose comme
En debug, vous pouvez voir la fenêtre de la console, mais pas dans le communiqué. Je l'aime. =)
Je suggère de vérifier la présence de la ligne suivante dans votre .PRO fichier :
Si vous pouvez trouver l'enlever ! Cela devrait résoudre votre problème !
Espère que cela aide !
Pour ceux d'entre vous de l'édition de l' .vcxproj directement, vous voulez ajouter un
SubSystem
avec la valeurWindows
à votreLink
ItemDefinitionGroup
comme suit:Aller à:
Projects --> Run
et décochezRun in terminal
caseCela a fonctionné pour moi:
J'avais besoin pour exécuter un fichier exe pour surveiller un fichier à l'aide de
QFileSystemWatcher
j'ai donc utilisé ce: