楼主:
shadowth (ã‚¦ã‚£ãƒ³ãƒ‡ã‚£ï¼ ã‚¤ãƒ¼ã‚¸ã‚¹)
2016-11-16 23:58:12今天有多研究一下DxLib如何在中文环境下作业。
还好有一定成果,趁现在把步骤写一写。
DxLib一直有一个问题,就是在非日文原生环境下,VS有char和TCHAR转换的issue,
还有header不是unicode编码编成。
如果不使用日文原生环境(OS+IDE都要是原生日文接口)和使用多字节字符集编译的话,
会发生照范例写但compile不过去的事情,以及查询DxLib所属function上的困难。
之前一直都架设独立环境去build,
现在找到解法后,对于我这个没什么程式语言概念的人最少会有一点帮助。
最少不用花时间去建构日文环境。
以下内容会顾虑到初接触DxLib的程式语言新手,所以步骤会从头开始写。
=======================================================
使用IDE: Visual Studio 2015 community(记得要安装VC++套件)
OS: Windows 7 SP1以上(VS安装必备条件)
1. 先到DxLib官网下载套件。
http://dxlib.o.oo7.jp/dxdload.html
里面选择VC++用,然后找地方执行解压缩。
2. (建议执行,对于在IDE中查function会比较方便)
找工具将解压缩后得到的所有header和文字档全部转成UTF-8编码。
我个人是使用ConvertZ,因为他可以做批次转换。
3. 开启VS,开启“Win32空专案”或自己再建立一个。
4. 在project有cpp档的状态下,
对方案总管的project档按鼠标右键选择“属性设定”。
5. 在属性设定内,将组态切到“所有组态”,平台切到“所有平台”,
然后照以下指示进行设定。
一般 → 字符集 :
“使用Unicode字符集”
C/C++ → 一般 → 其他include目录 :
找到刚刚解压缩DxLib的位置,
点进去找到“プロジェクトに追加すべきファイル_VC用”这个资料夹。
这个是需要include的目录。
p.s.通常我会手动将资料夹名改成英文。
连结器 → 一般 → 其他程式库目录 :
跟上头步骤的include目录一样。
C/C++ → 进阶 → 停用特定警告 :
新增4819 (未以Unicode格式储存程式码)
这个在纯日文环境下不会发生,但在中文环境下我会建议停掉他。
以上步骤做完先进行套用。
6. 将组态切到“Release”,到C/C++ → 程式码产生,
把执行阶段程式库改为“多执行绪(/MT)”,然后套用。
7. 将组态切到“Debug”,
把执行阶段程式库改为“多执行绪侦错(/MTd)”,然后套用。
以上,前置作业大功告成。
然后要注意原本程式码内,函数需要输入文字的地方,
例如文字输出系的printfDX还有DrawFormatString系列,
以及LoadGraph等要求档案位置的函数中,需要使用_T()将文字编码进行转换。
ex. DrawFormatString(100, 100, GetColor(255,255,255), "test");
→DrawFormatString(100, 100, GetColor(255,255,255), _T("test"));
以上资讯分享给大家!!