일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Tipsware
- mfc 실습
- visual
- C언어
- 실습
- 핵심 요약
- C
- 미가공
- tips강좌
- 정보처리기사
- 정처기 독학
- mysql
- 도움말
- MFC 예제
- linux
- MyThread
- 김성엽
- Time
- MFC
- SSG
- 유료강좌
- C++
- do it c
- 마이크로소프트
- MyTread
- win32
- ListBox
- 포트폴리오
- 별찍기
- 충무창업큐브
- Today
- Total
목록C (62)
History
1. FTP에 접속하기 위해서는 아래의 헤더파일과 lib를 포함시켜야 한다. #include #pragma comment(lib,"wininet.lib") #include "direct.h" 2. 멤버 변수 선언 HINTERNET mh_ftp_session; //세션 생성을 위한 멤버 변수 HINTERNET mh_ftp_connection; //세션과 연결하기 위한 멤버 변수 3. 세션 생성하기 Win32 인터넷 함수를 사용하려면 세션을 생성해야 합니다. 세션은 InternetOpen 함수를 사용해서 생성할 수 있으며 다른 인터넷 함수를 사용할 때 사용됩니다. FTP 클라이언트를 만들기 위해서는 아래와 같이 InternetOpen 함수를 호출하여 세션을 생성하면 된다. mh_ftp_session = ::..
- Heap Memory는 프로그램에서 동적으로 할당된 메모리를 관리하는 데 사용되는 영역이다. - 운영체제는 프로그램이 실행될 때 프로그램에 메모리 공간을 할당한다. 이 공간은 stack과 heap으로 구분된다. - stack은 지역 변수와 함수 호출 시 생성되는 변수들을 저장하는 영역이고, heap은 동적으로 할당되는 메모리를 저장하는 영역이다. - heap Memory는 프로그램에서 필요한 만큼 동적할당해서 사용한다. 대표적으로 malloc, calloc, realloc, new와 같은 함수(new는 연산자)로 heap 영역에 메모리 할당이 가능하며 메모리 주소를 반환한다. - 반환된 주소는 포인터 변수에 저장되며, 이 포인터 변수를 통해 할당된 메모리에 접근 가능하다. - heap 메모리는 sta..

1. 운영체제 - 하드웨어는 여러 장치들로 구성되어 있다. - 각 장치는 사용 한계치가 있기 때문에 개별적인 관리가 필요하다. 위와 같은 이유로 컴퓨터를 구성하는 하드웨어를 공부하거나 이해할 필요 없이 각 장치들을 제어할 수 있도록 도와주고 장치의 한계치를 관리하고 보호하는 소프트웨어가 필요하다. 이것이 운영체제(Operating system O/S)이다. 위 그림처럼 운영체제가 컴퓨터 유저와 하드웨어 사이에서 끼어있는 모습이다. 2. 응용 프로그램과 API - 개발자들이 해당 운영체제에서 동작하는 프로그램을 개발 할 수 있는데 이것을 응용 프로그램이라고 한다. - 개발자들은 일반 사용자보다 효과적으로 하드웨어와 운영체제가 관리하는 정보에 접근할 수 있다.(일반 사용자는 제어판 혹은 탐색기로 접근 가능)..

이전 빌드를 해결하고 다시 빌드를 돌렸더니, 이번엔 C1083 오류가 나왔다. 이 오류 코드에 대한 문제의 원인은 MS 공식 도움말을 참고해서 몇 개 적어보겠다. 1. 지정한 파일 이름이 잘못된 경우 원하는 .h 파일 이름 확장명이 없다. 예를 들어서 include 지시문에서 올바른 철자로 include를 했으면 오류가 안 난다는 말이다. 또한 하위 디렉터리에 있는 헤더를 include를 해야할 상황이라 아래와 같이 선언을 해줘야 한다. #include 2. 잘못된 버전의 파일 이름이 포함된 경우 현재 x86으로 빌드 중일 때만 #include가 적용될 때가 있다. 이때 include를 잘 확인해야 한다. 3. 파일이 포함 검색 경로에 포함되지 않음 include문이 따옴표로 묶인 경우 이렇게 하면 컴파..

처음 프로젝트를 만들면 다이어로그 기본 세팅이 위 이미지와 같을 것이다. "TODO: 여기에 대화 상자 컨트롤을 배치합니다." 이 문구는 기본적으로 STATIC 컨트롤로 되어있는데 속성은 아래와 같다. ID부분을 보면 IDC_STATIC이라고 되어있다. IDC_STATIC은 해당 STATIC의 ID를 나타내는 것으로 문자열을 변경하려면 아래 코드를 이용해서 바꿀 수 있다. BOOL CtestStaticStringDlg::OnInitDialog() { CDialogEx::OnInitDialog(); // 이 대화 상자의 아이콘을 설정합니다. 응용 프로그램의 주 창이 대화 상자가 아닐 경우에는 // 프레임워크가 이 작업을 자동으로 수행합니다. SetIcon(m_hIcon, TRUE);// 큰 아이콘을 설정합..

이번 차시에서는 data.txt에 있는 텍스트를 한 줄씩 읽어와서 출력하는 프로그램을 실습하겠다. 파일을 여는 함수는 fopen_s 함수를 사용하고 한 줄씩 텍스트를 읽는 함수는 fgets함수를 사용하겠다. 파일의 위치는 현재 작업경로에 넣었다. fgets 함수는 파일에서 더 이상 읽을 텍스트가 없는 경우에 NULL을 반환한다. 그래서 반복문으로 프로그램을 구성하면 텍스트 파일을 한 줄씩 읽다가 텍스트를 다 읽으면 종료하는 코드를 만들 수 있다. 완성된 코드는 아래와 같다. #include #pragma warning(disable:4996) #define MAX_LENGTH128 int main() { int line_count=0; //라인 줄 수 char buf[MAX_LENGTH]; //문자열을 ..

이 프로그램은 파이썬이나 OpenCV를 활용하지 않고, Visual Studio 2022에서 제공하는 Visual C++에서 MFC를 사용하여 만들었습니다. 1번째로 현재 가용가능한 카메라 장치를 찾습니다. 저는 데스크탑 환경에서 작업을 하기 때문에 캠을 연결했습니다. 2번째로 영상보기 버튼을 눌러서 프로그램에서 캠을 동작시킵니다. 3번째로 빨간점 추적 버튼을 눌러서 실시간으로 나오는 영상을 캡쳐하여 영상에 빨간색이 출력되면 빨간색만 보여주도록 기능을 구현했습니다. 객체는 빅파이 과자로 테스트 했습니다. 아래는 실행 화면입니다.

이번 실습은 저번에 이어서 진행한다. 우선 파일 복사 기능은 오른쪽 목록에 있는 파일을 선택해서 왼쪽으로 복사하는 기능과 함께 파일을 삭제하는 기능을 구현했다. 또한 현재 작업 경로를 파일탐색기로 열어서 작업에 파일이 제대로 들어갔을 때 확인이 가능하도록 기능을 추가했다. 디렉토리를 옮기거나 삭제하는 코드는 추후에 작업하도록 하겠다. 그렇기 때문에 이번 실습에서는 디렉토리를 복사하거나 삭제하려고 할 때 MessageBox로 경고 메시지를 띄우고 있다. 아래는 실행 화면이다.