
/*
    KAB-studio.h
        　ＫＡＢ−ｓｔｕｄｉｏで先週更新した内容
        が格納されたヘッダーファイルです（笑）。

    (C)KAB-studio ALL RIGHTS RESERVED.
        http://www2.justnet.ne.jp/~kabstudio/
        kab-studio@multimedia.design.co.jp

    送信日： 1999/04/26(Mon) No.004
    配信数： 1730（ Mag2 + Pubzine ）
*/




/*            １９９９年４月２６日（月）の更新                */


・Ｃｏｄｉａｎにページを追加予定。
　久しぶりですがＣｏｄｉａｎの「Ｃ＋＋を使いこなす！！」にコンストラ
クタ（前編）とコンストラクタ（中編）を追加。後編は来週ね。


・「ＫＴＬ」改変。
　ＫＴＬにバグ発見（爆）。 CSmartPtr クラスに使うデリーター
 CStdDeleter の実装方法が間違っていたため、このスマートポインタを使
 うとデストラクタが呼び出されません。これと TrackPopupMenuEasy() に
 バグがあって呼び出すことさえできなかった部分も修正して、アップロー
 ドしました。気付かなかったってのが情けない……。



/*                チョー普通な日記                */

１９９９年４月１８日（日）：
　そう、この日記のまとめ読みコーナーはヒドイ！！　だからちょっと手直
し。そしてイヤーンな表紙が５月から９月まで！　んで日曜のテレビ＆アニ
メ。そんな感じ。


１９９９年４月１９日（月）：
　グランデュオでバランスゲー！！　ところでＴＦＰ２の楽屋のっていいと
思います？　そんな感じ。


１９９９年４月２０日（火）：
　ＩＥ５って……そんな感じ。


１９９９年４月２１日（水）：
　小説家の卵は「いつか３×３ＥＹＥＳ　Ａｎｏｔｈｅｒ　Ｗｏｒｌｄ　み
たいなの書かれてみたい」と夢想する。そしてダイエットは順調に進む。ホー
ムページは管理が大事、かぶヘッダーは楽。そんな感じ。


１９９９年４月２２日（木）：
　健康診断っ！！　めんどくさいっ！！　検尿忘れたっ！！　そしてＣＧＩ。
そんな感じ。


１９９９年４月２３日（金）：
　去年もだが履修申告めんどくさっ！！　しかしグランデュオ中華街！！
そして変なお茶！！　んで金曜はアニメ！！　そんな感じ。


１９９９年４月２４日（土）：
　「アルプス伝説」を知っているか！？　「Ｏｈ！Ｘ」を知っているか！！
そんな感じ。



/*                    金菜さんの憂鬱                        */

１９９９年４月１８日（日）：
std::fstream::open()
古いのと新しいので引数が違う
ＫＴＬは今日更新
#pragma twice の宣伝


１９９９年４月１９日（月）：
お便り
プラグイン
LoadLibrary() 
Ｃｏｄｉａｎの「ＤＬＬの実行中リンク」
ＤＬＬからエクスポートする関数を統一
関数じゃなくクラス単位でＤＬＬとやりとりする


１９９９年４月２０日（火）：
End of file 
お便り
std::cin、std::cout のテキスト・バイナリモードを切り替える
_setmode() 
ofstream::setmode() と ios_base::binary は消えた
_setmode() を使うマニピュレーター関数
サンプルコード


１９９９年４月２１日（水）：
std::ios_base よりも std::iosを使うべき
std::ios_base はＶＣのみ
「ＤＬＬの遅延ロード」は「明示的リンク」の間違い
お便り
ＤＬＬを外から見る
#pragma data_seg() やメモリマップトファイル
デバイスドライバとクラッキング


１９９９年４月２２日（木）：
ＵＮＩＸプログラミング
find で iostream を検索
cout が使えなかったのは -lstdc++ を立ててなかったから
ＳＧＩ版ＳＴＬ
Ｊａｖａの質問はちょっと……


１９９９年４月２３日（金）：
おやすみ


１９９９年４月２４日（土）：
ＫＴＬのバグリポート
KTL::CSmartPtr はデフォルトで KTL::CStdDeleter を使用
delete に合わせて void * に下のが原因
デストラクタが呼び出されなくなる
うちかぶ作成中



/*                    #pragma twice                        */

　Version 1.1
とりあえず作ってみよう！！


「じゃ、今回はひとつプログラムを作ってみようか」
『あたしにもいよいよ、かわいい赤ちゃんができるのね……』
「はいはい。じゃ、Visual C++ を起動して」
『軽く流すし……ん？ Visual C++ って？』
「これのこと」
　水希はマウスカーソルを＜メビウスリングのパッチワーク＞のようなアイ
コンに持っていく。アイコンの名前は＜Visual C++ 6.0＞。
『これって、この前使った＜バイナリーエディタ＞ってヤツじゃないの？』
「それも、この中に入ってるってこと。この Visual C++、略してＶＣには、
その他にも、文字を操作するエディタや、アイコンやダイアログを作るエディ
タもあるし、もちろん、プログラムを実行ファイルにすることもできる。だ
から、ＶＣのことを＜統合環境（ IDE ）＞って言ったりするから」
『何でもできるってことね。何でもできるヤツほど何もできない、って死ん
だおじいちゃんがよく言ってたけど』
「おじいちゃんがいるのか……ま、できるかどうかは、火美ちゃんの努力次
第ってとこかな」
『また棘のある言い方〜』
「そうかな……。じゃ、とりあえず始めてみようか」
『は〜い』
　そのままの位置でダブルクリックし、ＶＣが起動する。
『うん、この前のバイナリーエディタのときと同じね』
「じゃ、次に＜プロジェクト＞を作ってみようか」
『あ、なんか秘密計画っぽい雰囲気』
「なんかツッコミ入れるの疲れてきた……」
『はーい、ボケ自重しまーす。で、その＜プロジェクト＞ってなんなの？』
「アプリケーションを作るとき、必要なものっていっぱいあるでしょ」
『金、時間、根性』
「……」
『自重しますぅ……たとえばその、＜プログラム＞とか、あとさっき言って
た＜アイコン＞とかも作るんでしょ？』
「そうそう。そういうのって、ひとつのファイルにまとめないで、いろんな
ファイルに分散させるから」
『それをひとつにまとめるのが＜プロジェクト＞ってことね』
「そういうこと。じゃ、ひとつ、プロジェクトを作ってみようか。
まず、【ファイル】−【新規作成】を選んで」
　マウスカーソルが動き、メニューをクリックしていく。【新規作成】ダイ
アログが開く。
『あ、上のタブが【プロジェクト】になってる。この中から選ぶってこと？』
「そう、その中から【MFC AppWizard (exe)】を選んで」
　火美ちゃんの操るカーソルがクリックする。
「次にプロジェクト名を決めて。好きなのでいいよ、でもアルファベットと
数字でね」
『じゃ、ボケずに【FirstProject】と』
「次は【位置】。プロジェクトを置くフォルダを決めるんだけど、一応とり
あえず【Kamichan】っていうフォルダを作っておいたから、そこにしてね」
『つまり他の所に作っちゃダメってことね』
「そゆこと」
『でもここに作ったらファイルばらけちゃいそう。サブフォルダ作っていい？』
「プロジェクト名のフォルダが作られて、その中にファイルは置かれるから
大丈夫だけどね。でもまめにサブフォルダ作っておいた方がいいかな」
　マウスカーソルが動き、フォルダが開いて【Kamichan】を表示する。右ポッ
プアップメニューが表示され、フォルダが新規作成される。名前は【Test】。
『そういえばさ、こういうフォルダ作ったりするのも、プログラムでできる
の？』
「できるよ。結構簡単にね」
『ってことは、将来的にはこういう風にカーソル使わなくても色々できるよ
うになるんだー』
　水希は強烈な不安に駆られた。
『ってゆー表情しないでよ水希ちゃん』
「うーん、なんか、未来のトレスパッサーを育ててるような気がする……」
『今度そっち方面も教えてね』
「絶対ヤダ」
『ケチ』
　フォルダを作成したあと【...】ボタンを押し、【位置】を【Test】にす
る。
「他の設定はいいから、【OK】ボタン押してみて」
『はぁい』
　【MFC Appwizard ステップ 1】というダイアログが表示される。
「【作成するアプリケーションの種類】を【ダイアログ ベース】にして、
【次へ】ボタンを押して」
『【MDI】とか【SDI】っていうのもあるけど？』
「【MDI】はひとつ親ウィンドウがあって、その中にいくつものウィンドウ
があるもの。【SDI】は親ウィンドウがなくて、ウィンドウが普通にバラバ
ラにあるもの」
『えー？　よくわかんなーい』
「うーん、そうだなー。右上の【閉じる】ボタンとか【最大化】ボタンが、
横に２列になっているものが【MDI】、１列だけなのが【SDI】ってのは？」
『なーんか、騙されてるよーな気がするんだけどー』
「……まぁ、とりあえず【次へ】押して」
『私の勝ちぃ』
「うっさいなー」
　【MFC Appwizard ステップ 2/4】というページに移る。
『ねーねー』
「全部チェック外して【終了】を押す！！」
『え〜？』
「今度ちゃんと説明するから、今は、ね？」
『絶対だよ！？』
「絶対するから」
『ホントにぃ？』
「ホントだって！」
『言われた通りにするのって、つまんないしー』
「分かってるって。＜言われた通りにしてもらうの＞は今回だけ！！」
『……言い切っちゃっていいの？』
「それがどれだけつまらないかはよく分かってるつもり。火美ちゃんにはま
ず頂上まで登ってもらって、それから少しずつ降りてきてもらうつもりだか
ら、とりあえず今は、ね」
『頂上？』
「そ。どういう意味かは来週教えるから」
『ふ〜ん……ま、いっか』
　すべてのチェックボックスを外し、【終了】ボタンを押す。【新規プロジェ
クト情報】というダイアログが表示される。
「【OK】押して」
『はいはい』
　【OK】ボタンを押す。ダイアログが閉じ、分割ウィンドウが作成され、一
方に【OK】や【キャンセル】といったボタンを持つダイアログが、もう一方
に【FirstProject リソース】から続くツリーが表示されている。
『このダイアログってウィンドウの中に入ってるね』
「そ、このウィンドウが表示されることになるから」
『へー』
　カーソルが【キャンセル】ボタンの上に来て、ドラッグする。【キャンセ
ル】ボタンが移動する。
『おもしろーい。あ、もしかしてこれって【ダイアログエディタ】っていう
んじゃない？』
「そ。分かってるじゃん」
『ってことは、ここで変えたのが、アプリ実行したときに表示されるってこ
と？』
「そうだよ。メニューの【ビルド】−【ビルド】を選択してみて」
　マウスカーソルが動き、【ビルド】−【ビルド】を実行する。新たにウィ
ンドウが開き、【構成: FirstProject - Win32 Debug】と表示されると同時
にハードディスクが動き出す。
『な、何？』
「アプリケーションを作り始めたんだよ」
『え？　だって私、なにもプログラム作ってないのに？』
「火美ちゃんはもうプログラムを作ってたってこと」
『？？？』
　ウィンドウに【FirstProject.exe - エラー 0、警告 0】と表示され、ハー
ドディスクが止まる。
『……どうしたの？』
「アプリができたよ」
『もう！？』
「うん。【ビルド】−【デバッグの開始】−【実行】をしてみて」
　メニューが開いていき、【実行】される。再びハードディスクが動き、ウィ
ンドウ構成が少し変わったあと、ダイアログが表示される。
『あ！　ダイアログ、私が作った通りになってる！！　すごーい！！』
「どう？　アプリが完成した感想は」
『すごい！！　けど、私、何もしてないもん……』
「それでいいの」
『いいの？』
「いいの」




/*
    Preview Next Story!
*/
『なんか言われた通りにしただけで、つまんないなー』
「それも今回だけだから。頂上まで駆け昇ったってところかな」
『駆け昇ったら？』
「物見遊山しながら下山」
『ふーん』
「というわけで次回」
＜ Version 1.2 プロジェクトを探検しよう！！ ＞
『も見ようねー』
「つまんないのは僕もだから。でもこの方が早くマスターできるはず！！」
『ホントに？』
「たぶん……」






/*            １９９９年５月３日（月）の更新予定                */

・Ｃｏｄｉａｎにページを追加予定。
　Ｃｏｄｉａｎの「Ｃ＋＋を使いこなす！！」に「コンストラクタ（後編）」
を追加予定。それ以外はナシ。ゴールデンウィークだし、ヒット数も少ない
だろうし。ちなみに５月の表紙は１０日に公開予定。期待して待つように！！




/*                        ご注意！！                        */
/*

　このメールマガジンをそのまま「返信」すると、作者のメールアドレス
（ kab-studio@multimedia.design.co.jp ）へと転送される仕組みになって
います。「まぐまぐ」もしくは「Ｐｕｂｚｉｎｅ」の管理者へメールを送り
たい場合には、直接そちらへ新規のメールを送ってください。

*/
/*

　このメールマガジンの購読登録を解除する場合には

http://www2.justnet.ne.jp/~kabstudio/Info/MailMagazine/start.html

　が便利です。また、購読解除についての詳しい情報は、
登録時に送られてきた「まぐまぐ」もしくは「Ｐｕｂｚｉｎｅ」からの
メールをお読みください。

*/
/*

　本誌のバックナンバーはホームページ上にはありません。まぐまぐの

http://bigbeat.tegami.com/~mgsearch/frame.cgi?id=0000012198

　にありますのでそちらをどうぞ。

*/
/*
    KAB-studio.h
    Weekly Mail Magazine.
    Written by Kaburaya Seiden.

    (C)KAB-studio ALL RIGHTS RESERVED.
        http://www2.justnet.ne.jp/~kabstudio/
        kab-studio@multimedia.design.co.jp
*/


/*                    See you next week!!                    */


