Winmain pas appelé avant principal (Programme Point d'entrée C / C ++ Issue)
Question
J'avais l'impression que ce code
#include <windows.h>
#include <stdio.h>
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
printf("WinMain\n");
return 0;
}
int main()
{
printf("main\n");
return 0;
}
génèrerait WinMain, mais bien sûr, rien fonctionne jamais comment vous attend.
De toute façon, quelqu'un pourrait-il s'il vous plaît me dire comment obtenir ce programme pour exécuter WinMain d'abord (j'ai une raison d'utiliser les deux). Je suis en cours d'exécution de Windows 7 avec MinGW si cela aide tout.
La solution 3
Juste trouvé ce travail autour et le genre de sensation stupide.
#define main USER_Main
prend alors principale hors de la ligne pour être le point d'entrée des programmes tout en cachant le fait que tout a été sali avec de l'utilisateur.
Autres conseils
Vous devez mettre -mwindows
sur la ligne de commande lorsque vous appelez MinGW. Consultez cette comme une douce introduction à la programmation Windows avec MinGW.
Aussi:. Vous ne pouvez pas avoir deux points d'entrée dans un exécutable, de sorte que vous ne pouvez probablement pas faire ce que vous voulez faire
Le compilateur choisira un point d'entrée ou de l'autre selon que vous ciblez la sortie compilée au sous-système Windows ou le sous-système de la console. WinMain
pour le premier, main
pour ce dernier.