[WinAPI] GetCurrentThreadId, 쓰레드 식별자
GetCurrentThreadID에 대해 알아보겠습니다. 프로그램을 개발하고 배포를 하면 개발자도 사람이다 보니 오류가 생기는 경우가 많이 있습니다.유지보수 하는 것 또한 개발자가 해야할 일 인데, 이 경우 보통 로그를 분석하거나, Debug Output, TRACE를 사용하여 …
Win32, MFC
GetCurrentThreadID에 대해 알아보겠습니다. 프로그램을 개발하고 배포를 하면 개발자도 사람이다 보니 오류가 생기는 경우가 많이 있습니다.유지보수 하는 것 또한 개발자가 해야할 일 인데, 이 경우 보통 로그를 분석하거나, Debug Output, TRACE를 사용하여 …
간혹 개발을 하다보면, 현재 실행하고있는 내 프로그램의 경로를 알아야 할 때가 있는데, 그럴 때 GetModuleFileName 함수를 사용하면 쉽게 알아낼 수 있습니다. GetModuleFileName의 원형은 아래와 같습니다. 필요한 헤더파일은 아래와 같습니다. 매개 …
오늘은 언어 설정값을 읽어오는 방법을 알아보겠습니다. 배포하는 프로그램이 다국어를 지원하는 경우, 현재 System Locale 무엇인지 알아야 합니다. 이것은 제어판 -> 시계 및 국가 -> 국가 또는 지역 -> 관리자 옵션 탭에서 …
이번 글에서는 윈도우의 내용을 보호하는 Windows API 함수, SetWindowDisplayAffinity에 대해 알아보겠습니다. SetWindowDisplayAffinity 를 사용하기 위해선 아래 조건을 만족해야 합니다. Minimum supported client Windows 7 [desktop apps only] Minimum supported server Windows Server 2008 R2 [desktop apps only] Header winuser.h (include Windows.h) Library User32.lib DLL User32.dll …
아래와 같이 프로젝트 속성에서 명령 인수를 사용하면 쉽게 command를 전달할 수 있습니다. C, C++에서 CommandLine을 사용할 때, main의 인자값인 int argc, char *argv[]를 사용합니다. 콘솔기반 C, C++에서는 아래와 같이 사용합니다. …
이번 글에서는 데이터를 압축하는 Windows API를 알아보겠습니다. Compress를 사용하려면 아래 헤더파일과 라이브러리를 추가해야합니다. 압축을 위해선 우선 핸들을 만들어야 합니다. 만들어진 핸들을 이용하여 우선 압축 사이즈를 구합니다. 사이즈가 정상적으로 반환이 되면 …
이번 글에서는 Progress Control 사용법에 대해 알아보겠습니다.Progress Control은 아래와 같이 사용자에게 진행률을 표시할 때 매우 직관적으로 보여주는 컨트롤입니다. MFC 프로젝트 생성후 도구상자에서 Progress Control을 추가해줍니다. Progress Control을 사용하기 전에 범위를 …
이번글에서는 GetPrivateProfileSection에 대해 알아보겠습니다. GetPrivateProfileString을 사용하여 ini에 값을 읽어오는 글을 쓴 적이 있습니다.(링크)GetPrivateProfileString은 하나의 section과 하나의 key값에 대해 값을 읽어오는 것을 해봤습니다. GetPrivateProfileSection은 GetPrivateProfileString, GetPrivateProfileInt와 비슷하지만 Key가 없이 Section의 내용을 …
발을 하다보면, 프로세스 영역 바깥에서는 WM_MOUSEMOVE 이벤트가 받아지지 않습니다. 이렇게 마우스가 영역 밖으로 이동했을 때 WM_MOUSEMOVE를 받고 싶으면 SetCapture, ReleaseCapture를 사용합니다.SetCaptrue 함수 원형은 아래와 같습니다. 이전에 SetCapture를 했던 HWND가 있다면 …
이번 글에서는 엔디안에 대해 간단히 알아보고 Visual C++에서 어떻게 변환해야하는지 알아보겠습니다. 엔디안은 컴퓨터 메모리에 연속된 대상을 배열하는 방법을 말하며 바이트를 배열하는 방법을 말합니다.엔디안은 리틀엔디안, 빅엔디안, 미들엔디안이 있으며, 리틀엔디안 빅엔디안의 차이는 …