Internationalization and localization tools


File and Path Function

void _makepath(char *path, const char *drive, const char *dir, const char *fname, const char *ext);

void _wmakepath(wchar_t *path, const wchar_t *drive, const wchar_t *dir, const char *fname, const wchar_t *ext);

void _tmakepath(TCHAR *path, const TCHAR *drive, const TCHAR *dir, const TCHAR *fname, const TCHAR *ext);

Internationalization (I18n) Function Overview

The _makepath function constructs a full pathname from the drive, directory, filename, and extension arguments, and stores the result in path. No error checking is done; the path argument must point to an empty buffer large enough to hold the complete path, including the null-terminating character, and the resulting path string must be no greater than _MAX_PATH characters.

_wmakepath is the wide character equivalent of _makepath; its arguments are wide-character strings.

_tmakepath is the Generic version of the function; with the _MBCS or _UNICODE compiler flags determining its mapping to either _makepath or _wmakepath.

I18n Issues

Use the appropriate version of the function as required for internationalization support, ensuring that path is large enough to hold the resulting single-byte or wide character string. See Locale-Sensitive Length Functions for a discussion on single-byte and wide character sizes.

For a Windows MBCS application, _makepath 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.

See Pathnames for a discussion of path and filename considerations in an internationalized application.

Recommended Replacements*

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

File and Path Functions

 

Lingoport internationalization and localization services and software