Maison > Article > développement back-end > Pourquoi est-ce que j'obtiens une erreur « référence non définie à WinMain » lors de l'utilisation de wWinMain dans MinGW ?
Atténuation des références non définies à WinMain lors de l'utilisation de wWinMain en C MinGW
Lors de la tentative de création d'une application Windows en C à l'aide de MinGW (GCC), les utilisateurs peuvent rencontrer une référence non définie à WinMain s'ils choisissent d'utiliser wWinMain au lieu de int main(). Cette erreur se produit car la bibliothèque de démarrage CRT de MinGW ne prend pas en charge wWinMain.
Solution :
Les versions plus récentes de MinGW fournissent l'option de liaison -municode, permettant de passer à un démarrage alternatif. code qui permet l'utilisation de wWinMain au lieu de WinMain. L'intégration de cette option dans la ligne de commande, les options de l'éditeur de liens dans l'IDE ou le makefile devrait résoudre le problème :
g++ other_options_and_arguments -municode
Cependant, il convient de noter que les anciennes versions de MinGW ne prennent pas en charge cette option. Dans de tels cas, envisagez plutôt d’utiliser WinMain. Dans l'exemple fourni, puisque le programme n'utilise pas la valeur pCmdLine, modifier wWinMain en WinMain et PWSTR pCmdLine en PSTR pCmdLine devrait suffire pour la compilation.
Gestion de la ligne de commande Unicode :
Si vous avez ultérieurement besoin de la gestion de la ligne de commande Unicode, utilisez LPWSTR cmd_line = GetCommandLineW(); au lieu de l'argument WinMain.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!