Internationalization and localization tools


Process Control Function

int execv(const char *filename, char *const argv[]);

int _execv(const char *cmdname, const char *const *argv);

int _wexecv(const wchar_t *cmdname, const wchar_t *const *argv);

int _texecv(const TCHAR *cmdname, const TCHAR *const *argv);

Internationalization (I18n) Function Overview

These functions load and execute a new process. The argv argument is an array of pointers to command-line arguments. The last element of this array must be a null pointer.

_wexecv is the wide-character version of the function; its parameters and return value are wide characters. _wexecv is supported on Windows platforms only. There is no wide version on ANSI platforms.

_texecv is the Windows-only Generic version of the function; with the _MBCS or _UNICODE compiler flags determining its mapping to either _execv or _wexecv.

I18n Issues

Use the appropriate version of the function as required for internationalization support, noting the following:

For a Windows MBCS application, _execv depends on the multibyte code page in effect. By default, the multibyte code page is set to the system-default ANSI code page obtained from the operating system at program startup. Use _getmbcp and _setmbcp to query or change the current multibyte code page, respectively.

There is no ANSI wide character version of this function. The parameters will have to be converted to multibyte UTF-8 characters and then the execv function can be used.

Recommended Replacements*

*If you're already using the recommended function, see I18n Issues for other reasons why Globalyzer is detecting the function.

Process Control Functions

 

Lingoport internationalization and localization services and software