示例#1
0
void __fastcall XmlAddAttr(HXML hXml, LPCTSTR pszName, unsigned __int64 value)
{
	TCHAR buf[60];
	_ui64tot(value, buf, 10);

    xmlAddAttr(hXml, T2UTF(pszName), T2UTF(buf));
}
示例#2
0
文件: ini2.cpp 项目: axxapp/winxgui
void CIni::WriteUInt64(LPCTSTR strEntry,ULONGLONG n, LPCTSTR strSection/* = NULL*/)
{
	if(strSection != NULL) 
		m_strSection = strSection;
	TCHAR strBuffer[MAX_PATH];
	_ui64tot(n, strBuffer, 10);
	WritePrivateProfileString(m_strSection,strEntry,strBuffer,m_strFileName);
}
示例#3
0
void CMsnProto::MSN_GetCustomSmileyFileName(MCONTACT hContact, TCHAR* pszDest, size_t cbLen, const char* SmileyName, int type)
{
	size_t tPathLen;

	InitCustomFolders();

	TCHAR* path = (TCHAR*)alloca(cbLen * sizeof(TCHAR));
	if (hCustomSmileyFolder == NULL || FoldersGetCustomPathT(hCustomSmileyFolder, path, (int)cbLen, _T(""))) {
		TCHAR *tmpPath = Utils_ReplaceVarsT(_T("%miranda_userdata%"));
		TCHAR *tszModuleName = mir_a2t(m_szModuleName);
		tPathLen = mir_sntprintf(pszDest, cbLen, _T("%s\\%s\\CustomSmiley"), tmpPath, tszModuleName);
		mir_free(tszModuleName);
		mir_free(tmpPath);
	}
	else {
		_tcscpy(pszDest, path);
		tPathLen = _tcslen(pszDest);
	}

	if (hContact != NULL)
	{
		DBVARIANT dbv = {0};
		if (getTString(hContact, "e-mail", &dbv))
		{
			dbv.type = DBVT_ASCIIZ;
			dbv.ptszVal = (TCHAR*)mir_alloc(11);
			_ui64tot((UINT_PTR)hContact, dbv.ptszVal, 10);
		}

		tPathLen += mir_sntprintf(pszDest + tPathLen, cbLen - tPathLen, _T("\\%s"), dbv.ptszVal);
		db_free(&dbv);
	}
	else {
		TCHAR *tszModuleName = mir_a2t(m_szModuleName);
		tPathLen += mir_sntprintf(pszDest + tPathLen, cbLen - tPathLen, _T("\\%s"), tszModuleName);
		mir_free(tszModuleName);
	}

	bool exist = _taccess(pszDest, 0) == 0;

	if (type == 0) {
		if (!exist) pszDest[0] = 0;
		return;
	}

	if (!exist)
		CreateDirectoryTreeT(pszDest);

	TCHAR *sztSmileyName = mir_a2t(SmileyName);
	mir_sntprintf(pszDest + tPathLen, cbLen - tPathLen, _T("\\%s.%s"), sztSmileyName,
		type == MSN_APPID_CUSTOMSMILEY ? _T("png") : _T("gif"));
	mir_free(sztSmileyName);
}
示例#4
0
LPTSTR Variant2T(VARIANT var,LPTSTR buf)
{
	USES_CONVERSION;
	if (var.vt == VT_BYREF+VT_VARIANT)
		var = *var.pvarVal;
	if (var.vt == VT_ERROR)
		return _T("");
	else if (var.vt==VT_BSTR)
		return OLE2T(var.bstrVal);
	else if (var.vt==VT_I2 || var.vt==VT_I4 || var.vt==VT_I8)
#ifdef _WIN64
		return _ui64tot(var.uintVal,buf,10);
#else
		return _ultot(var.uintVal,buf,10);
#endif
	return _T("");
}
示例#5
0
void AddressToString(DWORD64 dwAddr64,LPTSTR ptszBuf,BOOL bAdd0x,int nChars)
{

	TCHAR atszAddr[32];
	_ui64tot(dwAddr64,atszAddr,16);

	int i = 0;

	if(bAdd0x)
	{
		ptszBuf[i++] = _T('0') ;
		ptszBuf[i++] = _T('x') ;
	}

	int nLen = _tcslen(atszAddr);
	while(nLen++ < nChars)
	{
		ptszBuf[i++] = _T('0') ;
	}

	ptszBuf[i] = 0 ;

	_tcscat(ptszBuf,atszAddr);
}
示例#6
0
void BinValToStrSimle(
    const BINVAL_TYP*    pVal,
    FC_CString*          pStr          //c-like value string
)
{
    TCHAR buffer[256];

    switch(pVal->typ) 
    {
    case BL_BOOL:
        buffer[0] = pVal->aBOOL ? _T('1') : _T('0');
        buffer[1] = 0;
    break;
    case BL_BYTE:
        buffer[0] = '0';
        buffer[1] = 'x';
        _ltot(pVal->aBYTE & 0xff, buffer+2, 16);
    break;
    case BL_WORD:
        buffer[0] = '0';
        buffer[1] = 'x';
        _ltot(pVal->aWORD & 0xffff, buffer+2, 16);
    break;
    case BL_UINT:
        _ultot(pVal->aWORD & 0xffff, buffer, 10);
    break;
    case BL_INT:
        _ltot(pVal->aINT, buffer, 10);
    break;
    case BL_DWORD:
        buffer[0] = '0';
        buffer[1] = 'x';
        _ltot(pVal->aDWORD, buffer+2, 16);
    break;
    case BL_UDINT:
        _ultot(pVal->aDWORD, buffer, 10);
    break;
    case BL_DINT: 
        _ltot(pVal->aDINT, buffer, 10);
    break;
    case BL_LWORD:
        buffer[0] = '0';
        buffer[1] = 'x';
        _ui64tot(pVal->aLWORD, buffer+2, 16);
    break;
    case BL_LINT:
        _ui64tot(pVal->aLINT, buffer, 10);
    break;
    case BL_REAL:
        if(pVal->aREAL != 0.0)
            _stprintf(buffer, _T("%.8e"), (double)pVal->aREAL);                  
        else
            _tcscpy(buffer, _T("0"));
    break;
    case BL_LREAL:    
        if(pVal->aLREAL != 0.0)
            _stprintf(buffer, _T("%.17e"), pVal->aLREAL);
        else
            _tcscpy(buffer, _T("0"));
    break;
    case BL_TOD:
        _ltot(pVal->aTOD, buffer, 10);
    break;
    case  BL_DATE:
        _ltot(pVal->aDATE, buffer, 10);
    break;
    case  BL_TIME:
        _ui64tot(pVal->aTIME, buffer, 10);
    break;
    case  BL_DT:
        _ui64tot(pVal->aDT, buffer, 10);
    break;
    case BL_STRING:
    case BL_WSTRING:
        pStr->load(pVal->pszStr); //HACK
        return;
    break;
    default:
        assert(!"data type not supported");
        pStr->load(_T("<data type not supported>"));
        return;
    }

    pStr->load(buffer);
}