본문 바로가기 메뉴 바로가기

Zadd

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

Zadd

검색하기 폼
  • 분류 전체보기 (85)
    • Zadd (7)
      • WorkOut (4)
    • Programming (60)
      • MFC(C++) (48)
      • C# (5)
      • Database (6)
      • Windows (1)
    • Blog (2)
    • Stock (2)
    • Travel Abroad (2)
      • Vietnam (0)
    • FYI (8)
    • 부가가치세 (4)
      • 준비 (4)
  • 방명록

Programming/MFC(C++) (48)
[MFC] 스레드(Thread) 활용하기

Visual Studio 2012 사용 스레드(Thread)를 활용해보자. 스레드 한개를 미리 생성해서 대기시켜놓고, Run명령을 통해 작동/중지시키고 Stop명령을 통해 스레드를 종료하는 방법까지 다뤄본다. 1. 선언 // header.h CWinThread *m_pThread; HANDLE hThread; bool m_bRun, m_bStop; static UINT RunThread(LPVOID pParam); //... m_pThread을 통해 스레드를 시작하고, hThread에 해당 핸들을 넣는다.m_bRun, m_bStop으로 스레드를 시작하거나 종료하는 구문을 넣는다.RunThread는 스레드 시작시 사용할 함수 원형이다. 2. 정의 1) OnInitDialog // main.cpp BOOL ..

Programming/MFC(C++) 2018. 11. 29. 09:12
[MFC] 다이얼로그 크기 조절 시 컨트롤 사이즈 자동 조절하기(EasySize)

Visual Studio 2012 다이얼로그 크기 조절시 안에 있는 컨트롤 사이즈도 자동으로 조절해보자. 간단히 컨트롤을 조절하기 위해 인터넷 검색 중 덴마크의 Marc Richarme 아저씨가 만든 EasySize란 좋은 매크로를 발견하여 공유합니다. 소스는 여기서 받는다. EasySize 사용하기 1. 받은 EasySize.h 파일을 프로젝트의 stdafx.h에 포함시킨다. // ... #include "EasySize.h" //... 2. 클래스 선언함수 안에 DECLARE_EASYSIZE를 추가한다. (세미콜론을 넣지 않는다.) // ... // TestDlg.h : 헤더 파일 // CTestDlg 대화 상자 class CTestDlg : public CDialog { //... DECLARE_E..

Programming/MFC(C++) 2018. 10. 30. 16:41
[MFC] 운영체제(OS) Bit 확인하기

Visual Studio 2012 운영체제의 Bit를 확인해보자(32Bit/64Bit). 1. 함수원형은 다음과 같다. // ... BOOL Is64BitWindows(); //... 2. 소스코드 클래스이름에 본인이 작업할 클래스명을 적으면 된다. OS가 64비트면 TRUE, 32비트면 FALSE를 반환한다. // ... BOOL 클래스이름::Is64BitWindows() { #if defined(_WIN64) return TRUE; // 64-bit programs run only on Win64 #elif defined(_WIN32) // 32-bit programs run on both 32-bit and 64-bit Windows // so must sniff BOOL f64 = FALSE; r..

Programming/MFC(C++) 2018. 10. 26. 17:11
[MFC] CreateProcess와 CreatePipe를 이용하여 ping command 실행 하고 결과 읽기

Visual Studio 2012 MFC에서 ping command 실행하여 값을 확인해보자. 1. 함수원형은 다음과 같다. 매개변수인 pCmdArg에 기존 명령프롬프트에서 사용하는 명령어를 넣으면 된다. // ... CString ExecCmd( LPCSTR pCmdArg); //... 2. 소스코드 클래스이름에 본인이 작업할 클래스명을 적으면 된다. Pipe를 통해서 CreateProcess로 만들어진 자식프로세스의 읽기나 쓰기가 가능하다 // ... CString 클래스이름::ExecCmd( LPCSTR pCmdArg) { // Handle Inheritance - to pipe child's stdout via pipes to parent, handles must be inherited. // S..

Programming/MFC(C++) 2018. 10. 26. 17:05
[MFC] CListCtrl 클립보드 복사 구현하기(Ctrl+C 기능 구현)

Visual Studio 2012 CListCtrl 을 활용해서 리스트에 있는 내용을 클립보드로 복사하기 1. 클립보드 복사 함수 함수 원형은 다음과 같다. 매개변수는 CListCtrl 포인터와 클립보드 저장 시 셀의 데이터를 나누는 기준(기본값 은 탭[\t]) // ... BOOLCopyListToClipboard(CListCtrl* pListCtrl, LPCTSTR lpszSeparator = _T("\t")); //... 함수 소스코드는 아래를 참조한다. 클래스이름에 본인이 쓰려는 클래스 이름을 넣으면 된다. 리스트에서 컬럼 제목과 선택된 리스트 데이터들을 클립보드에 복사하는 내용이다. // ... BOOL 클래스이름::CopyListToClipboard(CListCtrl* pListCtrl, LP..

Programming/MFC(C++) 2018. 10. 26. 10:23
[MFC] 람다 표현으로 CArray 정렬하기

Visual Studio 2012 비주얼 스튜디오 2010부터 람다 함수를 지원한다.(C++11 기준) MFC를 사용하면서 CArray나 CStringArray를 사용하게 되었는데, 정렬 기능을 지원하지 않기에 검색한 내용을 바탕으로 작성하였다. 1. 람다 함수간단하게 표현하면 아래와 같다. 자세한건 검색으로 찾아보자.[변수 캡쳐] (받을 인자)-> 리턴타입{함수}(넘길인자) 2. CArray 사용하기우선 CArray를 사용하기 위해선 아래와 헤더를 선언하여야한다. // ... #include // ... CArray도 선언하자. // ... CArray arr; // ... 3. 람다 함수를 사용하여 정렬하기 // ... CArray arr; arr.Add(10); arr.Add(5); arr.Add(..

Programming/MFC(C++) 2018. 10. 22. 17:25
[MFC] 멀티스레드 사용하여 소켓통신 채팅 서버 프로그램 만들기

Visual Studio 2012 멀티 스레드를 사용하여 소켓통신용 서버 프로그램을 만들어보자. 기존에 만들었던 소켓통신 채팅 서버프로그램에서 몇가지 수정하고 추가하면 된다. 1. CWinThread용 클래스 생성 및 구현 클래스 마법사에서 'MFC 클래스' 클릭 클래스 추가 - 기본클래스는 CWinThread으로 지정 CSocketThread 클래스 - 필요 함수SetWnd : 다이얼로그의 핸들을 받기 위한 함수 함수 및 핸들 변수 선언// CSocketThread.h // #include "ClientSocket.h" //ClientSocket 헤더 추가 #define WM_ACCEPT_SOCKET WM_USER+1 //ServerSocket에 있던 메시지 쓰레드로 이동 class CSocketThr..

Programming/MFC(C++) 2018. 7. 20. 14:14
[MFC] 소켓통신 채팅 클라이언트 프로그램 만들기

Visual Studio 2012 이번엔 소켓으로 통신하는 채팅 클라이언트 프로그램을 만들어보자. 클라이언트 프로그램은 클라이언트 담당 소켓만 있으면 된다. 1. MFC 프로젝트 생성 새 프로젝트 - MFC 응용 프로그램 선택 대화상자 기반 선택 Windows 소켓 선택 2. Client 소켓 만들기 클래스 마법사에서 'MFC 클래스' 선택 CClientSocket 클래스 추가 - 기본클래스는 CSocket으로 지정 3. CClientSocket 클래스 구현 - 필요 함수SetWnd : Sendmessage 활용을 위한 메인의 핸들을 받는 함수OnReceive : 서버 통신 받을 시의 처리 함수OnClose : 소켓 해제 시의 처리 함수- 사용자 메시지WM_CLIENT_RECV : 서버에서 응답 온 메시..

Programming/MFC(C++) 2018. 7. 19. 17:41
[MFC] 소켓통신 채팅 서버 프로그램 만들기

Visual Studio 2012 소켓으로 통신하는 채팅 서버 프로그램을 만들어보자. 서버 프로그램에서 사용하는 소켓은 두 종류가 있다. - Listen 소켓 - Client 매칭 소켓 1. MFC 프로젝트 생성 새 프로젝트 - MFC 응용 프로그램 선택 대화상자 기반으로 선택한다 아래 창에선 다음과 같이 Windows 소켓에 체크표시하고 '마침' 누름 2. 소켓에 해당되는 클래스 만들기 클래스 마법사에서 'MFC 클래스' 클릭 클래스 추가 - 기본클래스는 CSocket으로 지정 Listen 소켓 클래스 이름(CServerSocket)Client 매칭 소켓 클래스 이름(CClientSocket) 3. Listen 소켓 클래스 구현 - Listen할 때 필요한 함수SetWnd : Sendmessage 활용..

Programming/MFC(C++) 2018. 7. 19. 17:01
[MFC] 콘솔창 대신 디버그창 활용하기(OutputDebugString)

Visual Studio 2012 C언어를 사용하면서 콘솔창으로 이것저것 넣어서 출력해가며 테스트 하던 버릇때문에 MFC에서도 콘솔창 활용해서 테스트 했었는데, 쓰레드를 이용할 시 문제가 생긴다고 함. 그래서 콘솔창 대신 디버그 창을 활용하기로 하자. 방법은 간단하다. OutputDebugString(_T("디버그창")); 예를 들어 다음과 같이 코드를 작성한다. void CDialog4::OnBnClickedBtnThreadstart() { // TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다. OutputDebugString(_T("디버그창")); } 디버그를 실행하여 확인해보자 참고로 디버그 창을 보려면 디버그 모드에서 하단의 출력창을 확인하면 된다.

Programming/MFC(C++) 2018. 7. 16. 15:33
이전 1 2 3 4 5 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
  • MXCOMPONENT
  • ADO
  • 법정동코드
  • 스티커메모로드중
  • 모달리스 다이얼로그
  • Sticky Notes Loading
  • 전자신고파일설명서
  • Modeless
  • MFC Modeless
  • c++
  • 전자신고변환
  • 해외송금확인
  • 부가가치세
  • MFC ADO
  • CMFCBUTTON
  • sqlite3
  • 프로세스이름변경
  • #자동업데이트
  • MSSQL
  • SendMessage
  • 부가가치세전산매체
  • ADODB
  • 청년내일채움공제
  • 항공알파벳
  • 소켓
  • 세금계산서합계표양식
  • 모달리스
  • MFC
  • 스쿠트항공 환불받기
  • 청년내일채움공제 만기신청
more
«   2025/08   »
일 월 화 수 목 금 토
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바