Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
53 lines
1.3 KiB
C++
53 lines
1.3 KiB
C++
#include "stdafx.h"
|
|
#include "GlobalFunctions.h"
|
|
#include "Clipboard.h"
|
|
|
|
#include <Utility/Registry/RegFunctions.h>
|
|
|
|
class CLogAnalyzeSetup : public Registry::CSetupFile
|
|
{
|
|
public:
|
|
|
|
CLogAnalyzeSetup(const char* szFileName) : Registry::CSetupFile(szFileName) { }
|
|
static CLogAnalyzeSetup& GetInstance();
|
|
};
|
|
|
|
CLogAnalyzeSetup& CLogAnalyzeSetup::GetInstance()
|
|
{
|
|
static CLogAnalyzeSetup setup("./GameLogAnalyzerSetupFile.ini");
|
|
return setup;
|
|
}
|
|
|
|
// 리스트 컨트롤에서 선택한 내용을 엑셀 포맷으로 클립핑하기
|
|
// 매개변수 : ctrlList - 클립핑 할 리스트 컨트롤, nColCount - 컬럼 수
|
|
bool ClippingListBox(CListBox& ctrlList)
|
|
{
|
|
CString strBuffer;
|
|
strBuffer.Empty();
|
|
|
|
for(int nRow = 0; nRow < ctrlList.GetCount(); ++nRow)
|
|
{
|
|
CString strGetText;
|
|
ctrlList.GetText(nRow, strGetText);
|
|
|
|
strBuffer.AppendFormat(_T("%s"), strGetText);
|
|
strBuffer.AppendFormat(_T("\r\n"));
|
|
}
|
|
|
|
return CClipboard::SetText(strBuffer);
|
|
}
|
|
|
|
const char* GetMyINIString(const char* szSection, const char* szKey)
|
|
{
|
|
const char* szResult = CLogAnalyzeSetup::GetInstance().GetString(szSection, szKey, 0);
|
|
|
|
if(0 == szResult)
|
|
{
|
|
CString strErr;
|
|
strErr.Format("Setup string load failed! - key: %s", szKey);
|
|
AfxMessageBox(strErr, MB_ICONSTOP);
|
|
return "???";
|
|
}
|
|
|
|
return szResult;
|
|
} |