J'ai besoin de développer un fichier .exe qui lancera un fichier .jar exécutable qui est stocké sur un sous-dossier appelé Comment puis-je éviter cette fenêtre noire qui disparaît dans certains millisecondes? Strong> p> Ceci est le code : p> J'ai essayé aussi avec ce code et le même résultat: p> Je suis au courant Il y a d'autres questions similaires Mais aucun d'entre eux ne fonctionne pour ce problème et aucun d'entre eux ne semble s'appliquer à Sublime et à GCC. P> P> noyau code>. J'ai construit l'application C ++ .exe avec
texte sublime code> et
mingw code> et ça fonctionne bien, mais il y a un petit problème que j'ai besoin de résoudre. Lorsque vous exécutez le fichier .exe .exe, au cours d'une partie minimale de la durée, vous pouvez voir une fenêtre noire à l'écran qui disparaît dans certains millisecondes et après elle, l'application Java .jar s'ouvre. Cela ne se produit que si j'utilise cela .exe .exe. Si je double-cliquez dans le bocal exécutable, la fenêtre noire n'apparaît pas.
3 Réponses :
Utilisez CreateProcess () ou ShellexecuteEex () qui vous rappellera le processus créé et avec cette poignée, vous pouvez tuer le processus.
Voici un exemple montrant comment cela fonctionne, y compris les erreurs Handeling.
STD :: Chemin de chaîne = "C: \\ Windows \\ System32 \\ cmd.exe";
Ok, je te vois émettre maintenant. Laissez-moi tester ce cas d'utilisation et revenir à vous soo,
Le problème n'est pas votre appel à Shellexecute. Votre code est pour une application de console. Applications de la console, comme on pouvait deviner, exécuter dans une console (cette fenêtre noire; identique à laquelle vous obtiendriez si vous avez couru cmd.exe). P>
Vous pouvez simplement remplacer voir 14 B pour comment Faites une application 'Windows' avec Mingw. P> principal code> avec
winmain code> et simplement appeler
shellexecute code> là pour lancer le pot, et il ne devrait y avoir aucune console résultante. fenêtre (en supposant que le pot lui-même ne la crée pas). P>
Dans le lien de la duplication éventuelle, ils utilisent Visual Studio, j'utilise Sublime et GCC, veuillez supprimer la demande en double, et même si je reçois pour la lancer dans une fenêtre, la fenêtre sera probablement visible comme la console, Les deux sont des fenêtres. Si vous pensez que je peux appliquer que Visual Studio répond à mon problème avec Sublime et GCC, s'il vous plaît, pouvez-vous partager un petit exemple de code?
Désolé, négligé de remarquer que la différence légèrement importante :). Cependant, l'idée tient; Une application "Windows" ne doit pas nécessairement avoir une fenêtre.
Mais la demande en double est toujours présente, pouvez-vous la supprimer s'il vous plaît?
Ah, mon mauvais. Pour une raison quelconque, je pensais que la suppression du commentaire était suffisante. devrait être rétracté maintenant. a été une semaine étrange, heh
Enfin j'ai découvert que c'est suffisant avec l'ajout -mwindows code> à la commande Compile GCC: