Visual Studio
[Visual Studio] F5로 디버깅 실행 시 콘솔창이 바로 꺼질 때
Ctrl + F5 (디버그하지 않고 시작) 으로 실행시킨다. 맨 마지막 return 직전 줄에 system("pause"); 를 추가하여 종료 직전에 잠깐 멈춘다. 요 설정으로도 F5는 바로 꺼진다..! F5는 말 그대로 버그가 있을 때 어디에서 오류가 났는지 추적하는 용이지, 실행결과를 확인하는 목적이 아니므로!
[Visual Studio] 같은 솔루션(프로젝트) 내에 여러 소스코드 추가하기
같은 프로젝트 설정을 유지하면서 여러 소스코드(.cpp) 파일을 추가하고 싶을 때, 사용하지 않을(현재 실행하지 않을) 소스코드의 설정으로 들어가서 빌드에서 제외>예 설정을 해준다
LNK2001 "public: virtual struct QMetaObject const * __thiscall ~ qt_metacall~" 외부 기호를 확인할 수 없습니다.
Unresolved external symbol "public: virtual struct QMetaObject const * __thiscall ParentI inherited a class from QObject : class Parent: public QObject { Q_OBJECT QObject* cl; public: Parent(QObject *parent=0):QObject(parent) { cl = NULL; } QObject* get...stackoverflow.com 즉, 오류가 생긴 파일 (ex. data.obj)에 해당하는 moc_*.cpp 파일이 없어거나 열 수 없는 상태가 돼서 발생한 QT 관련 오류! 해결 방법 : 해당 헤더파일 (ex.data.h)에서 #include 를 지..
0xC0000139 : Entry Point Not Found. (ntdll.dll) 프로시저 시작 지점 ~을(를) DLL ~에서 찾을 수 없습니다.
이 오류는 프로그램의 시작점인 main 함수를 찾지 못해서 생기는 오류. 대부분 'DLL관련 오류' 이므로, 빌드 후 만들어진 프로그램(.exe) 위치로 가서 각종 DLL을 최신 DLL로 바꿔주는 등의 처리를 해줘야 함! (QT의 경우에는 VS에서 컴파일 하기 전에 먼저 자체적으로 컴파일..?같은 걸 해주는데 그 과정에서 먼저 오류 발생한 것) 이렇게 QT와 관련된 dll들을 설치된 QT 경로의 bin 폴더에서 찾아서 싹 다 바꿔주기!
LNK4272 'x86' 라이브러리 컴퓨터 종류가 'x64' 대상 컴퓨터 종류와 충돌합니다.
QT나 DCMTK, OpenCV 등의 라이브러리는 'x86'으로 빌드해놓고, VS에서 솔루션 빌드할 때의 플랫폼은 'x64'로 실행시켜서 생기는 오류! 따라서, 두 버전을 맞춰서 재빌드 or 실행하기! cf. 이런 불상사를 막기 위해서는 각종 라이브러리 빌드 및 개발 시, VS 버전 (MSVC : MicroSoft Visual C++) 개발 플랫폼 bit 종류 (x86, x64) 를 모두 고려해서 빌드해두기! 보통은 x86, x64 모두 빌드해둠!