143 lines
4.1 KiB
C++
143 lines
4.1 KiB
C++
|
|
/*//===============================================================
|
|||
|
|
|
|||
|
|
<< BASE-SET >>
|
|||
|
|
|
|||
|
|
PRGM : milkji, B4nFter
|
|||
|
|
|
|||
|
|
FILE : BASESET.HPP
|
|||
|
|
DESC : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD> <EFBFBD>⺻ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> üũ<EFBFBD>ϱ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ŭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
INIT BUILT DATE : 2007. 03. 13
|
|||
|
|
LAST BUILT DATE : 2007. 03. 13
|
|||
|
|
|
|||
|
|
Copyright<EFBFBD><EFBFBD> 2002~2009 B4nFter (b4nfter@gmail.com) and Co-Writers. All Rights Reserved.
|
|||
|
|
|
|||
|
|
*///===============================================================
|
|||
|
|
|
|||
|
|
|
|||
|
|
#pragma once
|
|||
|
|
|
|||
|
|
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
// INCLUDE
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
|
|||
|
|
// P.S.> SYSBASEBASE.H <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> WINDOWS.H <20><> <20>⺻<EFBFBD><E2BABB><EFBFBD><EFBFBD> <20><><EFBFBD>ܽ<EFBFBD>Ŵ)
|
|||
|
|
|
|||
|
|
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
// DEFINE
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
// DECLARATION
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : CLASS
|
|||
|
|
// NAME : CBaseSet
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20>⺻ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> üũ<C3BC>ϱ<EFBFBD> <20><><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
|
|||
|
|
class CBaseSet
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
static BOOL IsDebug();
|
|||
|
|
static BOOL IsUnicode();
|
|||
|
|
static BOOL IsMultiThread();
|
|||
|
|
static BOOL IsLittleEndian();
|
|||
|
|
static BOOL IsWindowStationVisible();
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
// IMPLEMENTATION
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBaseSet::
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> _DEBUG <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ȯ
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
inline BOOL CBaseSet::IsDebug()
|
|||
|
|
{
|
|||
|
|
return(MODE_CMP(TRUE,FALSE));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBaseSet::IsUnicode
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD> <20>ɼ<EFBFBD><C9BC><EFBFBD> _UNICODE <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ȯ
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
inline BOOL CBaseSet::IsUnicode()
|
|||
|
|
{
|
|||
|
|
return(MODE_CHARSET(FALSE, TRUE));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBaseSet::IsMultiThread
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD><C9BC><EFBFBD> _MT <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ȯ
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
inline BOOL CBaseSet::IsMultiThread()
|
|||
|
|
{
|
|||
|
|
return(MODE_MT(FALSE,TRUE));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBaseSet::IsLittleEndian
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><><EFBFBD><EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD> little-endian <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ȯ
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
inline BOOL CBaseSet::IsLittleEndian()
|
|||
|
|
{
|
|||
|
|
const unsigned long ulHost = 0x12345678;
|
|||
|
|
return(::htonl(ulHost) != ulHost);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBaseSet::IsWindowStationVisible
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><><EFBFBD><EFBFBD> <20><><EFBFBD>μ<EFBFBD><CEBC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD><CCBC><EFBFBD> USER-INTERACTIVE <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ȯ
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
inline BOOL CBaseSet::IsWindowStationVisible()
|
|||
|
|
{
|
|||
|
|
HWINSTA hWindowStation = ::GetProcessWindowStation();
|
|||
|
|
if (hWindowStation != NULL) {
|
|||
|
|
USEROBJECTFLAGS stUOF;
|
|||
|
|
DWORD dwNeed = 0;
|
|||
|
|
if (::GetUserObjectInformation(hWindowStation, UOI_FLAGS, &stUOF, sizeof(USEROBJECTFLAGS), &dwNeed) == TRUE) {
|
|||
|
|
return ((WSF_VISIBLE & stUOF.dwFlags) == WSF_VISIBLE);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return FALSE;
|
|||
|
|
}
|
|||
|
|
|