int __cdecl __wgetmainargs(int * _Argc, wchar_t *** _Argv, wchar_t ***_Env, int _DoWildCard, _startupinfo *_StartInfo) { _initialize_wide_environment(); _configure_wide_argv(_DoWildCard ? 2 : 1); *_Argc = *__p___argc(); *_Argv = *__p___wargv(); *_Env = *__p__wenviron(); if (_StartInfo) _set_new_mode(_StartInfo->newmode); return 0; }
/* * @implemented */ wchar_t *_wgetenv(const wchar_t *name) { wchar_t **env; size_t length = wcslen(name); for (env = *__p__wenviron(); *env; env++) { wchar_t *str = *env; wchar_t *pos = wcschr(str, L'='); if (pos && ((unsigned int)(pos - str) == length) && !_wcsnicmp(str, name, length)) return pos + 1; } return NULL; }