VisualC++ 2005 Express Edition を使用した場合のDXライブラリの使い方


 VisualC++ 2005 Express Edition を使用してDXライブラリを使ったソフトを制作するには以下のような手順を踏みます。

1.DXライブラリを使うために必要なものを揃える

2.VisualC++ 2005 Express Edition のセッティングをする

3.プロジェクトの作成

4.プロジェクトへ新規プログラムファイルを作成・追加

5.DXライブラリを使用するためのプロジェクトの設定を行う

6.プログラムを組む

7.プロジェクトのビルド、実行



1.DXライブラリを使うために必要なものを揃える

VisualC++ 2005 Express Edition でDXライブラリを使うには以下のものが必要です。

    ・VisualC++ 2005 Express Edition
    ・Platform SDK
    ・DXライブラリ Windows版 VisualStudio( C++ )用

 まず VisualC++ 2005 Express Edition は、 プログラムをコンパイルして実行可能なファイルを作成する際のメインとなるソフトです。
 以前はマイクロソフトのウェブサイトから無償でダウンロードすることができましたが、 現在は無償ダウンロードが終了していますのでこのページは既に Visual C++ 2005 Express Edition をお持ちの方むけの解説となります。

 次の Platform SDK は、VisualC++ 2005 Express Edition でウインドウズOSの機能を使用したソフトを作成する為に必要なもので、 DXライブラリを使用したソフトを作成する際にも必要になります。
 こちらも現在はダウンロードする手段が無くなっていますので、既に Platform SDK をお持ちの方のみがこの先に進めます。

 最後の DXライブラリ Windows版 VisualStudio( C++ )用は本サイトのここからダウンロードすることが 出来ます。これがないとDXライブラリを使うことが出来ませんので、まだダウンロードされていない方はダウンロードしておいてください。



2.VisualC++ 2005 Express Edition のセッティングをする

 DXライブラリを使用したソフトウエアの開発に必要なアイテムは以上で揃ったわけですが、 まだDXライブラリを使用したソフトウエアの開発には他にも準備が必要です。
 というわけで、ここでは次の作業を行います。


 1.Platform SDK のインストール場所と DXライブラリ の場所を VisualC++ 2005 Express Edition に教える

 2.VisualC++ 2005 Express Edition でウインドウベースのソフトを作成できるようにする


 まず1から始めましょう。
 Platform SDK は VisualC++ 2005 Express Edition で WindowsOS 専用の機能を使用するために必要なものですが、 インストールをしただけでは機能しません。きちんと VisualC++ 2005 Express Edition に 『ここにインストールしたから使ってね』と教えてあげる(設定する)必要があるのです。
 そして、DXライブラリもダウンロードしただけでは使うことは出来ないので、 Platorm SDK と同じく VisualC++ 2005 Express Edition に場所を教えてあげる必要があります。
 というわけで、早速 VisualC++ 2005 Express Edition に Platform SDK のインストール場所と DXライブラリの場所をを教えて(設定して)あげましょう。


   @インストールしたての VisualC++ 2005 Express Edition を起動

   Aメニューから『ツール』→『オプション』を選択してオプションダイアログを表示

   B ダイアログ左のリストから『プロジェクトおよびソリューション』を開き、
    中の『VC++ ディレクトリ』をクリック

   C『ディレクトリを表示するプロジェクト』を『インクルードファイル』に変更

   Dディレクトリリストの一番下の行をダブルクリックして、Platform SDK を
     インストールしたフォルダの中にある『Include』フォルダのパスを入力
    ( 何も設定を変更せずにインストールした場合は
      C:\Program Files\Microsoft Platform SDK\Include
    になります)

   E同じ要領で、今度はDXライブラリのパッケージ内に入っている
      『プロジェクトに追加すべきファイル_VC用』フォルダのパスをディレクトリリストに追加。

   F『ディレクトリを表示するプロジェクト』を『ライブラリファイル』に変更

   Gディレクトリリストの一番下の行をダブルクリックして、Platform SDK を
     インストールしたフォルダの中にある『Lib』フォルダのパスを入力
    ( 何も設定を変更せずにインストールした場合は
      C:\Program Files\Microsoft Platform SDK\Lib
    になります)

   H同じ要領で、DXライブラリのパッケージ内に入っている
      『プロジェクトに追加すべきファイル_VC用』フォルダのパスをディレクトリリストに追加。
     (DXライブラリはインクルードディレクトリとライブラリファイルのパスは同じになります)

   I『OK』ボタンを押してオプションダイアログを閉じて完了

 これで VisualC++ 2005 Express Editon に Platform SDK のインストール場所とDXライブラリの場所を設定することが出来ました。


 次に2の VisualC++ 2005 Express Edition でウインドウベースのソフトを作成できるようにする作業を行いましょう。

 ウインドウベースのソフトというのは、所謂普通のウインドウを使ったソフトです。ウインドウベース ではないソフトというのは余りお目にかかることは無いと思いますが、真っ黒の画面上に文字しか表示できない 『コンソールウインドウ』上で動作する『コンソールアプリケーション』のことです。
 実は VisualC++ 2005 Express Edition は学習用ソフトという位置付けの為か、初期状態では このコンソールアプリケーションしか作成出来ません。 C言語の参考書に載っている main 関数から処理が開始されるプログラムはウインドウズOS上ではコンソールウインドウ上で動作するので、 学習用としてはそれだけ出来れば良いだろう、ということなのかもしれません。
 しかし、DXライブラリを使ったソフトはコンソールアプリケーションではなく普通のウインドウベースのソフトなので、 VisualC++ 2005 Express Edition でウインドウベースのソフトを作成できるように設定を変更しなければいけない、というわけです。

 前置きが長くなりましたが早速設定を変更しましょう。


@VisualC++ 2005 Express Edition が起動していたら終了する

AVisualC++ 2005 Express Edition がインストールされているフォルダから

 VC フォルダ→VCProjectDefaults フォルダ
 ( 何も設定を変更せずにインストールした場合は
  C:\Program Files\Microsoft Visual Studio 8\VC\VCProjectDefaults )

 の中にある corewin_express.vsprops というファイルを、メモ帳などのテキストエディタで開く


Bcorewin_express.vsprops の 8行目の

AdditionalDependencies="kernel32.lib" />

 という部分を

AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib" />

 に変更して保存


CVisualC++ 2005 Express Edition がインストールされているフォルダから

 VC フォルダ→VCWizards フォルダ→AppWiz フォルダ→Generic フォルダ→
 Application フォルダ→html フォルダ→1041 フォルダ
 ( 何も設定を変更せずにインストールした場合は
C:\Program Files\Microsoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application\html\1041 )

 の中にある AppSettings.htm というファイルを、同じくメモ帳などのテキストエディタで開く


DAppSettings.htm の 441行目から 444行目までの

WIN_APP.disabled = true;
WIN_APP_LABEL.disabled = true;
DLL_APP.disabled = true;
DLL_APP_LABEL.disabled = true;

 という部分を(441行目に無かった場合はファイル内を WIN_APP_LABEL で検索してみて下さい)

// WIN_APP.disabled = true;
// WIN_APP_LABEL.disabled = true;
// DLL_APP.disabled = true;
// DLL_APP_LABEL.disabled = true;

 に変更して保存。

 以上で VisualC++ 2005 Express Editon でウインドウベースのソフトを作れるようになります。
(なんだか裏技みたいな方法ですが、マイクロソフトのオフィシャルページに載っている正規の方法です(汗))



3.プロジェクトの作成

 VisualC++ 2005 Express Edition の面倒な設定作業が終わり、 やっとまともにウインドウベースのソフトが作れるようになったところで一つ簡単なソフトを作ってみましょう。
 ここでは『画面の中心に点を打つ』という動作をするソフトを作る手順を記したいと思います。
 VisualC++ 2005 Express Edition でソフトを作るにはまず『プロジェクト』を作成する必要があるので以下にその方法を示します。

   @ VisualC++ 2005 Express Edition のメニューの
           『ファイル』→『新規作成』→『プロジェクト』を選びます。

   A 『プロジェクトの種類』項目から『VisualC++』→『Win32』を選びます。

   B 『テンプレート』項目から『Win32 コンソール アプリケーション』を選びます。

   C 次にプロジェクトを作成するフォルダパスを『場所』で設定します。

   D 次にプロジェクトの名前を『プロジェクト名』に入力します。
                       ここでは仮に『test』とします。

   E 『ソリューションのディレクトリを作成』のチェックを外してから『OK』を押します。

   F すると次に『Win32アプリケーションウィザード』ウインドウが出るので
    ウインドウの左側にある『アプリケーションの設定』を選択します。

   G 右側になにやら沢山項目が出てきますが、『アプリケーションの種類』を
     『Windows アプリケーション』に変更し、『追加のオプション』欄の
     『空のプロジェクト』にチェックをいれて下の『完了』ボタンを押します。

 これでプロジェクトの作成は完了です。



4.プロジェクトへ新規プログラムファイルを作成・追加

 次に新規のプログラムファイルを一つ作成しプロジェクトに追加します。
 ソフト作りのメインとなるプログラムファイルの追加です。

  @ VisualC++ 2005 Express Edition のメニューから
    『プロジェクト』→『新しい項目の追加』を選び、『新しい項目の追加』を
    開きます。

  A ウインドウ左側の『カテゴリ』から『VisualC++』を選び、右の『テンプレート』
     からは『C++ファイル(cpp)』を選び、下の『ファイル名』欄にファイル名
     を入力し(ここでは仮に『DrawPixelとします』)、『追加』ボタンを押します。

 これでプログラムファイルの新規追加は完了ですが、
一番最初のプログラムファイルを追加した時だけ、次の作業を行ってください。



5.DXライブラリを使用するためのプロジェクトの設定を行う

 早速プログラムを組みたいところですが、最初のプログラムファイル追加後はDXライブラリを使用するプログラムのコンパイルに必要なプロジェクトの設定を行います。
 具体的には、DXライブラリはコンパイル時にマルチスレッド用ライブラリを使用するように設定されているので、DXライブラリを使用するソフトウエアも使用するライブラリをマルチスレッド用に変更する必要があります。

  @ VisualC++ 2005 Express Edition のメニューの
      『プロジェクト』→『(プロジェクト名) プロパティ』を選びます。
    ((プロジェクト名)の部分は、今回は『test』になっている筈です)

  A プロパティダイアログが開いたら、ダイアログの左上にある『構成(C)』と
     書かれている項目を『アクティブ(Debug)』から『すべての構成』に変更します。

  B 次にダイアログの左側のリストから『構成プロパティ』→『全般』を選びます。

  C ダイアログ右側に表示されている『文字セット』の項目を
     『マルチ バイト文字セットを使用する』に変更したあと、ダイアログ右下にある『適用』ボタンを押します。

  D ダイアログの左上にある『構成(C)』と書かれている項目を『すべての構成』から
     『Release』に変更します。

  E 左側のリストから今度は『構成プロパティ』→『C/C++』→『コード生成』を
     選びます。

  F ダイアログ右側に表示されている『ランタイム ライブラリ』の項目を
     『マルチスレッド(/MT)』に変更したあと、ダイアログ右下にある『適用』ボタンを押します。

  G ダイアログの左上にある『構成(C)』と書かれている項目を『Release』から
     『Debug』に変更します。

  H ダイアログ右側に表示されている『ランタイム ライブラリ』の項目を
     今度は『マルチスレッド デバッグ(/MTd)』に変更します。

  I 最後にダイアログの下の方にある『OK』を押してダイアログを閉じます。

 以上です。
 さて、新たに作成されたプログラムファイルには何も書かれていないので、
次に示すプログラムを入力します。



6.プログラムを組む

 後はプログラムを組むだけです。
今回サンプルとして実行するプログラムは次のようになります。

#include "DxLib.h" // プログラムは WinMain から始まります int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { if( DxLib_Init() == -1 ) // DXライブラリ初期化処理 { return -1 ; // エラーが起きたら直ちに終了 } DrawPixel( 320 , 240 , GetColor( 255,255,255 ) ) ; // 点を打つ WaitKey() ; // キー入力待ち DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 }



 プログラムはこれだけです、どの部分が何をしているのか簡単に説明します。 まず最初の1行はDXライブラリを使用するために必要なファイルをインクルードしています。
 次の『int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )』はウインドウズのプログラムのスタート地点となる 関数の宣言です。それぞれの単語が何を意味しているかは特に考える必要はありません。 ウインドウ環境のスタート関数はすべてこの形の宣言をとります。
 中括弧関数最初の文『if( !DxLib_Init() ) return -1;』はDXライブラリを 初期化して使える状態にするために必要な関数『DxLib_Init』を呼んでいます。 この関数はDXライブラリを使うプログラムを組む際には例外を除いてまず 最初に呼び出す必要があります。因みに『if(...』と書かれているのは初期化に 失敗したらその時点でソフトを終了させるという処理を行うための物です。
 『DrawPixel』はそのまま点を描画するための関数です。
 その次の『WaitKey』はキーが押されるまで処理を止める関数です。
 最後の『DxLib_End() ;』は注釈にも書いてある通りDXライブラリの使用を 終了する処理を行う関数を読んでいる文です。DXライブラリを使用している プログラムは最後に必ずこの関数を呼ばなくてはなりません。これを呼ばないで終ると 大変な事になりますので注意してください。



7.プロジェクトのビルド、実行

 入力が終ったら実行してみましょう。実行するためには

  @ VisualC++ 2005 Express Edition のメニューから[デバッグ]→[デバッグ開始]

  A すると『プロジェクトの構成は変更されています ビルドしますか?』と
   出るので『はい』を押します。

  B エラーがなければ実行されます。エラーがあった場合は画面下のウインドウ
   にエラー内容が出てきますので指示にしたがって修正してください。

 さて画面中心に点がうたれたでしょうか?
 実行するまでにかなり長かったような気がしますがその殆どが VisualC++ 2005 Express Edition での ソフトウエア制作に必ず必要な作業ですので幾つかプログラムを組んでいけばすぐに慣れて しまう筈です。


 さて出来あがった実行可能ファイルですが、それはプロジェクトのフォルダの中の『Debug』 フォルダか『Release』フォルダの中に作成されます。これがこれまでの作業の成果となります。
 これでDXライブラリを使ってのソフト制作の方法はわかりました。後は好きに プログラムを組んでゲームを作るだけです。ですがまだDXライブラリの機能は 初期化と終了とドットを描画する関数しかわかっていません。  この他の関数はDXライブラリ関数リファレンスのページで解説されていますのでそちらを 参照して下さい。





戻る