일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Time
- 유료강좌
- win32
- 포트폴리오
- 정보처리기사
- C++
- mfc 실습
- tips강좌
- 도움말
- MyTread
- C언어
- 별찍기
- mysql
- visual
- 정처기 독학
- 김성엽
- SSG
- 충무창업큐브
- 마이크로소프트
- Tipsware
- do it c
- MyThread
- linux
- 핵심 요약
- MFC
- 미가공
- C
- 실습
- ListBox
- MFC 예제
- Today
- Total
목록Visual Studio (22)
History

운영체제가 64 비트라는 뜻은 해당 운영체제가 사용하는 기본 데이터 처리 단위가 64 비트라는 뜻이다. 최근에 나온 컴퓨터들은 x64 기반의 cpu를 사용하기 때문에 x86보다는 x64 프로그래밍이 cpu의 효율을 최대로 뽑아낼 수 있다. 64비트 운영체제 환경에서 x86 프로그래밍을 사용하게 되면 메모리(ram)를 4기가 바이트만 사용할 수 있기 때문이다. (64비트 프로그래밍은 8기가바이트) ps) 64비트 운영체제는 x64, x86로 작업된 프로그램이 전부 호환된다. 그러나 32비트 운영체제에서는 x64로 만든 프로그램은 호환성 문제가 발생할 수 있다. 생각보다 많은 사람들이 32비트 체체를 가진 cpu를 사용하는 사람이 많다. 해외 고객들 컴퓨터를 가끔 원격으로 들어가 보면 윈도우 xp로 ..
git remote add orgin "연결할 깃허브 주소" -> 깃허브와 연결시키는 행위 git commit -m "커밋 텍스트" -> 커밋 실행 git push origin master -> 연결된 깃허브에 push 실행 (난 master가 아니라 main으로 했었음) git status -> 실행시 빨간색으로 나타나는 파일들은 버전이 추적되지 않은 상태, 초록색으로 나타나는 파일들은 버전이 추적된 상태를 나타냄 git add . -> 실행시 모든 파일의 추적을 시작, 단 .gitignore에 포함된 파일들은 추적되지 않는다. ( .gitignore 폴더에 들어있는 내용들은 깃허브 커밋시 포함되지 않음) git log -> 깃 로그 확인
이 카테고리는 오류 코드가 발생하고 해결하면 쓰려고 만든 곳이지만, 일하다가 이런 경우에 죽을 수도 있구나라는 사실을 알아서 기록용으로 남기려고 한다. 윈도우에서는 프로그램이 실행될 때 할당된 핸들 개수와 GDI Objects의 개수가 존재한다. GDI Objects는OS에서 인식하는 GDI 개체(글꼴, 브러쉬, 펜, 비트맵 등) DC가 UI에 너무 많이 열려있으면 발생할 수 있다. 특정 프로세스의 GDI Objects의 개수를 확인하려면 Process Explorer를 통해 알아보는 방법이 있다. 방법은 추후 기록용으로 올리도록 하겠다. GDI 개체 수가 10,000에 가까우면 Error -12: Out of Memory 가 발생하고 다른 그래픽 항목을 만들 수 없다. 이러한 버그에 걸리지 않도록 하려..
Visual Studio로 빌드할 때 C3861 : _T 식별자를 찾을 수 없습니다. 라는 문구가 뜨면 오류가 나는 CPP에 #include 헤더파일을 추가하면 해결된다.

이번글은 프로젝트 속성 페이지인 구성 속성에 대해 알아보도록 하겠다. 프로젝트의 "구성 속성"은 해당 프로젝트의 빌드 및 실행과 관련된 여러 설정을 포함한다. 이러한 설정을 통해 프로젝트의 동작을 세부적으로 제어하고 조정할 수 있다. 가장 많이 쓰는 핵심적인 5가지만 정리해 보았다. 1. 출력 디렉터리 이 속성은 해당 프로젝트가 컴파일이 됐을 때 프로그램이 배치될 경로이다. 보통 건드리지 않았다면 아래와 같이 매크로가 지정이 됐을 것이다. $(SolutionDir)$(Configuration)\ 2. 중간 디렉터리 빌드 프로세스에서 생성된 파일이나 중간 결과물이 저장되는 디렉터리이다. 주로 소스 코드 파일을 컴파일하고 링크한 후에 생성된 중간 바이너리 파일, obj 파일 등이 임시로 저장되는 공간이다. ..

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

계속 같으면서도 다른 이유로 컴파일 오류가 발생하는 것을 이제 문서로 정리해서 올리려고 한다. 서로 다른 케이스로 반복되니까 시간을 하도 많이 뺏겨서 이젠 내가 내 블로그에서 찾으면 어지간한 오류는 해결할 수 있게 만들도록 해보겠다. DLL을 업데이트하는 작업 하다가 이런 오류를 만났다 오류 설명글을 보니까 static_assert에 걸린 것 같다. 여기까지 읽어서는 어디가 문제인지 모르겠다. 계속 읽어보면 마지막 줄에 WINDOWS_IGNORE_PACKING_MISMATCH defined라는 문구가 있다. 뭔가 이걸 검색하면 뭐라도 나오지 않을까 구글링을 해본 결과 4년 전 네덜란드 개발자가 이러한 문제로 질문을 올린 적이 있어서 답변을 참고해서 해결했다. 방법은 아래와 같다. 해당 프로젝트 속성-> ..

1. LIB과 DLL LIB(Library,*lib) 파일은 C언어 소스 파일을 컴파일해서 만든 목적 파일(*. obj)을 효율적으로 재구성해 놓은 파일이다. 따라서 라이브러리는 특정 소스를 대체하는 개념으로 사용되고 이미 컴파일 된 상태이기 때문에 추가로 컴파일되지는 않는다. 그러나 라이브러리는 실행 파일에 직접 포함되는 개념이기 때문에 라이브러리에 문제가 있어 라이브러리 파일을 다시 만들었다면 이 라이브러리를 사용하는 모든 실행 파일은 새 라이브러리 파일을 사용해서 다시 빌드해야 하는 불편함이 있다. 그래서 Windows 운영체제에서는 이런 불편함을 줄이기 위해서 DLL(Danamic Linking Library) 이라는 기술을 제공한다. DLL도 LIB처럼 실행파일에 종속된 개념이지만 DLL은 빌드..