본문 바로가기
MFC DLL 함수 로드할 때 C2564 에러 원인 해결 MFC에서 DLL 사용할 때 종종 발생하는 에러입니다. 저에게 발생했던 이유는 변수 이름을 잘못 적은 게 원인이었습니다. 기본 제공 형식으로 함수 스타일 변환을 수행할 때에는 인수를 하나만 사용할 수 있습니다. dll을 사용할 때 헤더 파일에 아래와 같이 호출할 함수를 정의합니다. 1typedef int (__stdcall *something)(char * arr);cs 그리고 명시적으로 호출할 함수 something과 매칭되는 변수 var_something를 정의합니다. 1something var_something;cs cpp 파일에서 dll 함수 로드 등 여러 구현을 하겠죠. 그리고 something이 아니라 객체 변수 var_something을 호출하여 사용해야 하는데, something을 호출해 .. 2019. 7. 25.
MFC CString 합치기, 분리하기, GetBuffer 사용하기, 예제 3종 MFC CString 합치기, 분리하기, GetBuffer 사용하기, 예제 3종 MFC CString 합치기, 분리하기 MFC CString, 기본적인 형태 12345678CString data1 = "a";CString data2;CString result; int num = 12;data2.Format("%d", num); result = data1 + data2; cs 변수 a가 문자열일 경우, 1234CString data1 = "a";CString result; int num = 12; result.Format("%s%d", data1, num); cs 변수 a가 문자일 경우, 1234char data1 = 'a';CString result; int num = 12; result.Format(".. 2018. 10. 20.
[MFC] C++ Switch Case에서 CString 사용 [MFC] C++ Switch Case에서 CString 사용 기본적으로 MFC에선 Switch문에서 CString을 사용할 수 없습니다. 정말 사용해야할 피치못할 상황이라면 조금 돌아가는 방법으로 MFC 스위치문에서 CString을 사용할 수 있죠. 관련 소스를 소개합니다. 우선, 아래처럼 스위치문에 필요한 키워드를 정의합니다. 12345#define STR_SWITCH(x) {CString switchval(x); if (false) {;} // Semicolon is necessary#define CASE(y) else if (switchval == y) {;#define DEFAULT else if (true) {;#define BREAK }#define END_SWITCH }Colored by .. 2017. 8. 27.
MFC C# 문자열 자르기 비교 - CString String Mid, Left, Right MFC(CString class)에서 Left, Mid, Right를 사용하여 문자열 자르기하는 방법은 아래와 같습니다. MFC (CString) Samples: 12345678910CString somestring = L"ABCDEFG"; somestring.Left(3) == L"ABC" somestring.Mid(2,3) == L"CDE"somestring.Mid (2) == L"CDEFG" somestring.Right(3) == L"EFG" The index starts at 0 (MFC and C#), so nIndex=2 means the 3rd char!cs C#의 Substring()과 비교하면 이렇습니다. 두 언어의 문자열 자르기 비교표입니다. MFC (CString) C# (strin.. 2017. 3. 7.