Skip to content

Commit 5c3e712

Browse files
committed
vs2013默认没安装多字节MFC库,只安装了UNICODE MFC库
1 parent a9a4998 commit 5c3e712

File tree

3 files changed

+14
-3
lines changed

3 files changed

+14
-3
lines changed

App/MFC/ChineseChess/CMakeLists.txt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,11 @@ SET(RCC_FILES
2828

2929
if(MSVC)
3030
set(CMAKE_MFC_FLAG 2) # 1:用 MFC 静态库 2: 用 MFC DLL
31-
set(LIBS_DEFINES ${LIBS_DEFINES} "_AFXDLL" "_MBCS" ) # "_UNICODE" "UNICODE")
31+
if(MSVC_VERSION VERSION_GREATER_EQUAL 1900)
32+
set(LIBS_DEFINES ${LIBS_DEFINES} "_AFXDLL" "_MBCS" )
33+
else()
34+
set(LIBS_DEFINES ${LIBS_DEFINES} "_AFXDLL" "_UNICODE" "UNICODE")
35+
endif()
3236
endif()
3337

3438
add_executable(${PROJECT_NAME} ${SOURCES_FILES} ${HEADER_FILES} ${RCC_FILES})

Documents/Developer.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,4 +95,7 @@
9595

9696
### 开发
9797
#### 字符编码
98-
WIndows 中文系统字符编码默认为GB2313。 linux系统下字符编码一般使用 UTF-8 。所以本项目字符釆用**多字节编码**,而不使用 UNICODE 编码。
98+
WIndows 中文系统字符编码默认为GB2313。 linux系统下字符编码一般使用 UTF-8 。
99+
所以本项目字符釆用**多字节编码**,而不使用 UNICODE 编码。
100+
**注意:** vs2013默认没安装多字节MFC库,只安装了UNICODE MFC库。
101+
详见:https://docs.microsoft.com/en-us/cpp/mfc/mfc-mbcs-dll-add-on?view=vs-2019

Src/CMakeLists.txt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,11 @@ endif()
4747

4848
if(MSVC)
4949
set(CMAKE_MFC_FLAG 2) # 1:用 MFC 静态库 2: 用 MFC DLL
50-
set(LIBS_DEFINES ${LIBS_DEFINES} "_AFXDLL" "_MBCS") # "_UNICODE" "UNICODE")
50+
if(MSVC_VERSION VERSION_GREATER_EQUAL 1900)
51+
set(LIBS_DEFINES ${LIBS_DEFINES} "_AFXDLL" "_MBCS" )
52+
else()
53+
set(LIBS_DEFINES ${LIBS_DEFINES} "_AFXDLL" "_UNICODE" "UNICODE")
54+
endif()
5155
LIST(APPEND RCC_FILES ChineseChessControl.def)
5256
endif()
5357

0 commit comments

Comments
 (0)