Pushok icon

Easy config building

Pushok | PRO | 07/17/11 05:25:49 PM UTC | 0 ⭐ | 405 👁️ | Never ⏰ | []
C++ |

2.23 KB

|

None

|

0 👍

/

0 👎

#include "stdafx.h"
 
#define ROOT_SECTOR L"\"Sounds\""
#define JOIN_SECTOR L"\"Connect\""
#define T_SECTOR L"\"T Win\""
#define CT_SECTOR L"\"CT Win\""
 
std::vector< std::wstring > g_vTSounds, g_vCTSounds, g_vJoinSounds;
 
void ReadFiles( TCHAR* szDataPath, std::vector< std::wstring > *vBuff )
{
    WIN32_FIND_DATA fData;
    HANDLE l_hFile = FindFirstFile(szDataPath, &fData);
 
    do 
    {
 
        if( _tcscmp(fData.cFileName, L".mp3") )
        {
            vBuff->push_back(fData.cFileName);
        }
 
    } while ( FindNextFile(l_hFile, &fData) );
 
    FindClose(l_hFile);
}
 
void AddSector(TCHAR* szMainSector, TCHAR* szSectorName, std::vector< std::wstring > vBuff)
{
    DWORD l_dwPageCounter = 0;
    WCHAR l_szCounterBuff[36];
 
    _itow_s(++l_dwPageCounter, l_szCounterBuff, 10);
 
    _tcscat(szMainSector, L"\t");
    _tcscat(szMainSector, JOIN_SECTOR);
    _tcscat(szMainSector, L"\n{\n");
 
    for(std::vector< std::wstring >::iterator i = vBuff.begin(); i != vBuff.end(); i++)
    {
 
        _tcscat(szMainSector, L"\t\"");
        _tcscat(szMainSector, l_szCounterBuff);
        _tcscat(szMainSector, L"\"\n{\n\t\t");
        _tcscat(szMainSector, L"\"sound\"\t\"");
        _tcscat(szMainSector, i->c_str());
        _tcscat(szMainSector, L"\"\n\t\t}\n");
    }
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    TCHAR l_szDataPath[1024], l_szCTDataPath[1024], l_szTDataPath[1024];
    GetCurrentDirectory(sizeof(l_szDataPath), l_szDataPath);
 
    _tcscpy(l_szCTDataPath, l_szDataPath);
    _tcscpy(l_szTDataPath, l_szDataPath);
 
    _tcscat(l_szCTDataPath, L"\\ct\\*");
    _tcscat(l_szTDataPath, L"\\t\\*");
    _tcscat(l_szDataPath, L"\\*");
 
    ReadFiles(l_szDataPath, &g_vJoinSounds);
    ReadFiles(l_szTDataPath, &g_vTSounds);
    ReadFiles(l_szCTDataPath, &g_vCTSounds);
 
    TCHAR l_szBlock[4096];
 
    WCHAR l_szCounterBuff[36];
    DWORD l_dwPageCounter = 0;
    
    HANDLE l_hConfig = CreateFile( L"qsounds.cfg", GENERIC_ALL, 0, 0, CREATE_ALWAYS, 0, 0);
 
    _tcscpy(l_szBlock, ROOT_SECTOR);
    _tcscat(l_szBlock, L"\n{\n");
    
    AddSector(l_szBlock, JOIN_SECTOR, g_vJoinSounds);
    AddSector(l_szBlock, T_SECTOR, g_vTSounds);
    AddSector(l_szBlock, CT_SECTOR, g_vCTSounds);
 
    _tcscat(l_szBlock, L"}");
 
    DWORD l_dwCount;
 
    WriteFile(l_hConfig, l_szBlock, sizeof(l_szBlock), &l_dwCount, NULL);
    CloseHandle(l_hConfig);
 
    return 0;
}

Comments