5.付録
1.ファイル構成
- Speed.exe : 本体
- setup.ini : 設定ファイル
- image\bg01.bmp : 背景の画像
- image\cards\B1.bmp : カードの裏の画像
- image\cards\C*.bmp : クローバーの画像
- image\cards\D*.bmp : ダイヤの画像
- image\cards\H*.bmp : ハートの画像
- image\cards\S*.bmp : スペードの画像
- image\cards\J*.bmp : ジョーカーの画像
補足:背景や、トランプの画像は別の大きさの画像を用意し場合でも対応します。ウィンドウの大きさと画像の大きさを合わせて位置調整がされます。
2.Iniファイルの内容
- [NetworkSetting]
- IPAddress=192.168.11.2 : 通信相手のIPアドレス
- WaitingTime=30 : 接続を開始してから相手を待つ時間(秒指定)
- Port=50001 : 通信に使用するポート番号
3.ソースファイル
Header Files
_speed.h |
// スピード関係 |
common.h |
// よく使うであろう動作 |
developer.h |
// 全てのクラスを一括して読み込む |
frame.h |
// ウィンドウの外観を設計 |
image.h |
// 画像ファイルの操作 |
network.h |
// ネットワークの操作 |
task.h |
// タスクの操作 |
winmain.h |
// メイン関数の定義 |
winproc.h |
// ウィンドウプロシージャの定義 |
Source Files
_cards.cpp |
// スピードのカードに関する処理 |
_draw.cpp |
// スピードの描画に関する処理 |
_game.cpp |
// スピードのゲーム進行に関する処理 |
_game_mouse.cpp |
// スピードのマウス操作に関する処理 |
_game_network.cpp |
// スピードのネットワークに関する処理 |
_speed.cpp |
// スピードのその他の処理 |
_timer.cpp |
// スピードのタイマーに関する処理 |
common.cpp |
// よく使うであろう処理 |
frame.cpp |
// ウィンドウの設計 |
image.cpp |
// 画像ファイルの操作 |
network_tcp_udp.cpp |
// ネットワークの操作 |
task.cpp |
// タスクの操作 |
winmain.cpp |
// メイン関数 |
winproc.cpp |
// ウィンドウプロシージャ |
WM_COMMAND.cpp |
// メニューが選択された時の処理 |
WM_CREATE.cpp |
// ウィンドウが作成された時の処理 |
WM_DESTROY.cpp |
// ウィンドウが破棄されたときの処理 |
WM_LBUTTONDOWN.cpp |
// マウスの左ボタンが押された時の処理 |
WM_LBUTTONUP.cpp |
// マウスの左ボタンが離されたときの処理 |
WM_MOUSEMOVE.cpp |
// マウスが移動したときの処理 |
補足:最初に _(アンダーバー)がついているものが今回作成したソースプログラムです。他のファイルは作者が以前に作成したものを流用したもので、他にもたくさんのファイルがありますが、紹介しきれないので、代表的なものにとどめておきます。なお、ソースファイルは先頭に_がついているファイルと、network.h network_tcp_udp.cpp のみの記載となります。
1.ファイル構成
- Speed.exe : 本体
- setup.ini : 設定ファイル
2.Iniファイルの内容
- [Delay]
- IP1=192.168.1.2 : コンピュータA
- IP2=192.168.1.3 : コンピュータB
- Delay=100 : 転送にかかる時間(ミリ秒指定)
- Random=100 : 転送にかかる時間にプラスするランダム時間(ミリ秒指定)
3.ソースファイル
- WM_COMMAND.cpp // メニューが選択されたときの処理
補足:ヘッダファイルと、ソースファイルはSpeedに使った、先頭にアンダーバーがついている以外のファイルと同じものを流用しました。変更した部分は、WM_COMMAND.cppのみなので、この部分のみを紹介します。
スピード素材
- Ugetsu Company
http://www11.ocn.ne.jp/~ugetsu/
プログラム関係
- WindowsSDK入門
(HP消失)
- Microsoft MSDNオンライン
http://www.microsoft.com/japan/msdn/default.asp
- 近藤妥のC言語で始めるWindowsプログラミング
http://web.kyoto-inet.or.jp/people/ysskondo/index.html
- VC++によるWin32プログラミングTips
http://www.expertmg.co.jp/html/cti/vctips/index.htm
- ソケットプログラミング
http://www.katto.comm.waseda.ac.jp/~katto/Class/GazoTokuron/code/socket.html
NTP SNTP関係
- SNTP RFC2030日本語訳
http://www.geocities.co.jp/SiliconValley/6876/rfc2030j.htm
- SNTP RFC2030日本語訳
http://www.geocities.jp/heartland_cosmos_2211/rfc2030.html
- SNTP クライアントの作成 同期型・非同期型
http://www.nakka.com/lib/inet/sntpc.html
http://www.nakka.com/lib/inet/sntpcex.html
タイマー関係
- タイマー入門 - Visual C++ 6.0 編
http://www.ritsumei.ac.jp/se/~hirai/contest/text/6/VCtimer.html