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.

Était-ce utile?

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.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top