トップページ > 過去ログ > 記事閲覧
DxライブラリでUNICODE
名前:StAlWaYs 日時: 2011/03/04 18:25

DXライブラリでUNICODEを扱いたいのですが、 DxLibWというそれらしきファイルをリンクしても ワイド文字を扱いことができません。 どうすればよいのでしょうか?

Page: 1 |

Re: DxライブラリでUNICODE ( No.1 )
名前:いっち 日時:2011/03/04 19:49

開発環境は何をご使用でしょうか?
Re: DxライブラリでUNICODE ( No.2 )
名前:StAlWaYs 日時:2011/03/05 03:41

Visual C++ 2008 EEを使用しております。
Re: DxライブラリでUNICODE ( No.3 )
名前:いっち 日時:2011/03/05 18:59

基本的にはマニュアル通りにプロジェクトを作成します。 > VisualC++ 2008 Express Edition を使用した場合のDXライブラリの使い方 > (://homepage2.nifty.com/natupaji/DxLib/dxuse_vc2008express.html) ただし、以下の部分を変更します。 > 5.DXライブラリを使用するためのプロジェクトの設定を行う > C ダイアログ右側に表示されている『文字セット』の項目を『マルチ バイト文字セットを使用する』に変更したあと、ダイアログ右下にある『適用』ボタンを押します。 → 『文字セット』の項目を『Unicode 文字セットを使用する』に変更 これで、以下のコードがコンパイル可能になると思います。 //- 以下、テストコード -// #include "DxLib.h" int WINAPI _tWinMain( HINSTANCE, HINSTANCE, LPTSTR, int ) { ChangeWindowMode( TRUE ); if ( DxLib_Init( ) == -1 ) return -1; wchar_t *str = L"テスト TEST"; DrawFormatString( 0, 0, GetColor( 255, 255, 255 ), str ); WaitKey( ); DxLib_End( ); return 0; }
Re: DxライブラリでUNICODE ( No.4 )
名前:StAlWaYs 日時:2011/03/08 08:04

ワイド文字は教えていただいた方法で使えるようになったのですが、 代わりに以下の様なリンクエラーが出るようになってしまいました。 1>DxLibW.lib(DxWin.obj) : error LNK2005: "int __cdecl DxLib::DxLib_IsInit(void)" (?DxLib_IsInit@DxLib@@YAHXZ) は既に DxLib.lib(DxWin.obj) で定義されています。 1>DxLibW.lib(DxWin.obj) : error LNK2005: "int __cdecl DxLib::ErrorLogTabAdd(void)" (?ErrorLogTabAdd@DxLib@@YAHXZ) は既に DxLib.lib(DxWin.obj) で定義されています。 1>DxLibW.lib(DxWin.obj) : error LNK2005: "int __cdecl DxLib::ErrorLogTabSub(void)" (?ErrorLogTabSub@DxLib@@YAHXZ) は既に DxLib.lib(DxWin.obj) で定義されています。 1>DxLibW.lib(DxWin.obj) : error LNK2005: "int __cdecl DxLib::SetUseTimeStampFlag(int)" (?SetUseTimeStampFlag@DxLib@@YAHH@Z) は既に DxLib.lib(DxWin.obj) で定義されています。 1>DxLibW.lib(DxWin.obj) : error LNK2005: "unsigned int __cdecl DxLib::DxSetAllocSizeTrap(unsigned int)" (?DxSetAllocSizeTrap@DxLib@@YAII@Z) は既に DxLib.lib(DxWin.obj) で定義されています。 というのが、DxLibの関数すべてぐらいの個数(1100個くらい)出るようになりました。 どうすればいいのでしょうか?
Re: DxライブラリでUNICODE ( No.5 )
名前:いっち 日時:2011/03/08 19:05

おそらく強制的に DxLib.lib をリンクする設定になっているためだと思います。 プロジェクトのプロパティから「構成プロパティ」→「リンカ」→「入力」→「追加の依存ファイル」をご確認ください。 もしくは DxLib.h が壊れている可能性があるので再インストールをお試し下さい。

Page: 1 |