www.gusucode.com > ADO智能开发包C++源码程序 > ADO智能开发包/sfxdb_src_1.0.510.1/sfx/Source/db/sfxlng.cpp

    #include "stdafx.h"
#include "sfxlng.h"
#include "Exception.h"














#define BUFFER_SIZE  512
CString _SFX_EXT_CLASS LoadIniStr(LPCTSTR szID, LPCTSTR lpszKey, LPCTSTR lpszFileName)
{
	CString szValue;
	GetPrivateProfileString(lpszKey, szID, _T("not string"),
							szValue.GetBuffer(BUFFER_SIZE), BUFFER_SIZE, (LPCTSTR)lpszFileName);
	szValue.ReleaseBuffer();

#ifdef _DEBUG
	if (szValue.IsEmpty())
	{
		szValue = _T("无法找到字符串资源.");
	}
#endif
	//szValue.Replace("\\n","\n");	//替换回换行符号

	return szValue;
}


CString _SFX_EXT_CLASS LoadIntStrV(LPCTSTR szID, LPCTSTR lpszKey, LPCTSTR lpszFileName, va_list *pList)
{
	CString m_Hint;
	m_Hint = LoadIniStr(szID, lpszKey, lpszFileName);
	int _Len = 0;
	int _Max = 256;	
	va_start(*pList, m_Hint);
	CString RetString;
	RetString.FormatV(m_Hint, *pList);
	va_end(*pList);

	return RetString;
}


CString _SFX_EXT_CLASS LoadStrPrintf(LPCTSTR szID, LPCTSTR lpszKey, LPCTSTR lpszFileName, ...)
{
	CString m_Hint;
	m_Hint = LoadIniStr(szID, lpszKey, lpszFileName);
	int _Len = 0;
	int _Max = 256;	
	va_list _PrgList;
	va_start(_PrgList, m_Hint);
	CString RetString;
	RetString.FormatV(m_Hint, _PrgList);
	va_end(_PrgList);

	return RetString;
}


int _SFX_EXT_CLASS IniMessageBox(HWND hWnd, LPCTSTR szID, LPCTSTR lpszKey, LPCTSTR lpszFileName, LPCTSTR lpszCaption, UINT uType, ...)
{
	CString m_Hint;
	m_Hint = LoadIniStr(szID, lpszKey, lpszFileName);
	int _Len = 0;
	int _Max = 256;	
	va_list _PrgList;
	va_start(_PrgList, m_Hint);
	CString RetString;
	RetString.FormatV(m_Hint, _PrgList);
	va_end(_PrgList);

	return MessageBox(hWnd, RetString, lpszCaption, uType);
}