Non WinMain chiamato prima principale (C / C ++ Programma Punto di ingresso di Emissione)
Domanda
Ho avuto l'impressione che questo codice
#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;
}
avrebbe fatto di uscita WinMain, ma ovviamente nulla mai funziona come si aspetta.
In ogni modo, qualcuno potrebbe dirmi come ottenere questo programma da eseguire prima WinMain (ho una ragione per usare entrambi). Sono in esecuzione Windows 7 con MinGW se questo aiuta nulla.
Soluzione 3
Appena trovato in giro e tipo di sentirsi stupida questo lavoro.
#define main USER_Main
Questa poi tira fuori principale della linea per essere il punto di ingresso dei programmi, pur nascondendo il fatto che tutto ciò che era incasinato con dall'utente.
Altri suggerimenti
È necessario mettere -mwindows
sulla riga di comando quando si chiama MinGW. Controllare questo fuori come una breve introduzione alla programmazione Windows con MinGW.
Inoltre:. Non è possibile avere due punti di ingresso in un file eseguibile, quindi probabilmente non può fare quello che si vuole fare
Il compilatore sceglierà un punto di ingresso o l'altro a seconda che ci si rivolge l'output compilato al sottosistema di Windows o il sottosistema Console. WinMain
per l'ex, main
per la seconda.