Prise en charge de l'utilisation de wmain
Visual C++ prend en charge la définition d’une fonction wmain et le passage d’arguments de caractères larges à votre application Unicode. Vous déclarez des paramètres formels à wmain, à l’aide d’un format similaire à main
. Vous pouvez ensuite passer des arguments à caractère élargi et éventuellement un pointeur d’environnement à caractère élargi au programme. Les paramètres argv
et envp
de la fonction wmain sont de type wchar_t*
. Par exemple :
wmain( int argc, wchar_t *argv[ ], wchar_t *envp[ ] )
Remarque
Les applications Unicode MFC sont utilisées wWinMain
comme point d’entrée. Dans ce cas, CWinApp::m_lpCmdLine
est une chaîne Unicode. Veillez à définir wWinMainCRTStartup
avec l’option /ENTRY Linker.
Si votre programme utilise une fonction main, l'environnement de caractère multioctets est créé par la bibliothèque Runtime au démarrage du programme. Une copie de l'environnement à caractère élargi est créée uniquement lorsqu'elle est nécessaire (par exemple, par un appel des fonctions _wgetenv
ou _wputenv
). Lors du premier appel à _wputenv
, ou lors du premier appel à _wgetenv
si un environnement Mo CS existe déjà, un environnement de chaîne à caractères larges correspondant est créé. L’environnement est ensuite pointé par la _wenviron
variable globale, qui est une version à caractères larges de la _environ
variable globale. À ce stade, deux copies de l’environnement (Mo CS et Unicode) existent simultanément et sont conservées par le système d’exécution tout au long de la durée de vie du programme.
De même, si votre programme utilise une fonction wmain, un environnement à caractère élargi est créé au moment du démarrage et une variable globale _wenviron
pointe vers cet environnement. Un environnement Mo CS (ASCII) est créé lors du premier appel vers _putenv
ou getenv
vers lequel pointe la _environ
variable globale.
Voir aussi
Prise en charge pour Unicode
Synthèse de la programmation Unicode
Fonction WinMain