Maison >développement back-end >C++ >Pourquoi est-ce que j'obtiens une erreur « référence non définie à WinMain » lors de l'utilisation de wWinMain dans MinGW ?

Pourquoi est-ce que j'obtiens une erreur « référence non définie à WinMain » lors de l'utilisation de wWinMain dans MinGW ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-06 03:32:02988parcourir

Why do I get an

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn