예제 #1
0
_WCRTLINK int __F_NAME(sprintf,_swprintf) ( CHAR_TYPE *dest, const CHAR_TYPE *format, ... )
{
    va_list         args;

    va_start( args, format );
#ifdef __WIDECHAR__
    return( _vswprintf( dest, format, args ) );
#else
    return( vsprintf( dest, format, args ) );
#endif
}
예제 #2
0
void CNTService::DebugMsg(LPCTSTR pszFormat, ...)
{
    WCHAR buf[1024];
    swprintf( buf, _("[%s](%lu): "), m_szServiceName, GetCurrentThreadId() );
	va_list arglist;
	va_start( arglist, pszFormat );
    _vswprintf( &buf[wcslen(buf)], pszFormat, arglist );
	va_end( arglist );
    wcscat( buf, _("\n") );
    OutputDebugString( buf );
}
예제 #3
0
//-----------------------------------------------------------------------------------
GAMEWARE_API wchar_t *_FS_wide(const wchar_t *format, ...)
{
	_FS_index_wide = (++_FS_index_wide) % GW_MAX_STACK_FS_COUNT;  // circulate index

	va_list args;
	int len;

	va_start(args, format);
		len = _vscwprintf(format, args) + 1; // _vscwprintf doesn't count terminating L'\0'
		assert(len <= GW_MAX_STACK_ERROR_STR_LEN);
		_vswprintf(_FS_buffer_wide[_FS_index_wide], format, args);
	va_end(args);

	return _FS_buffer_wide[_FS_index_wide];
}