varargs指令

 Delphi 6。Windows.pasを覗いてみたが、wsprintfは相変わらずstdcallのままであった。D6からはvarargs指令が使えるので、ちょいと実験。

function wsprintf(Output: PChar; Format: PChar): Integer;
 cdecl; varargs; external user32 name 'wsprintfA';

var
  Buf: string;
 N: Integer;
begin
 Memo1.Lines.Clear;
 N := 64;
 SetLength(Buf,1024);
 wsprintf(PChar(Buf),'N: %d %x',N,N);
 SetLength(Buf,StrLen(PChar(Buf)));
 Memo1.Lines.Add(Buf);
end;

 呼べた。確かに呼べた。うー、気色悪…。

ActionManager

 Delphi 6。ActionManagerってのががどんなもんか、体感してみるべくチュートリアルにかかる。…私が使うような代物ではないな。まどろっこしくって。ていう前に、ちと不具合が多すぎるよ、これ。

Delphi6

 Borland Delphi 6が届き、さっそくインストール。が、インストール後の再起動がよろしくない。AUTOEXEC.BAT内のタブが改行に置換えられ、しかもDelphi 6へのPATHが登録されていない。ま、手作業で編集したから良いけども。ファイル名をAutoExec.batに変えたのもインストーラの所業か? Delphi 5に比べ、Userリソースは抑え目だが、GDIリソースをかなり喰う。「インストール番号」、「インストールキー」に加え、「使用許諾コードの取得」が必要になってしまったってのが物悲しい。

書籍

 書籍、「Delphi4 プログラミングバイブル」購入。Marco Cantù 著、篠原慶 監訳、インプレス 刊。(著者名にùを使用/IEの4以降ではちゃんと読める)

Delphi5

 Borland Delphi Professional Version 5.0届く。 重いなぁ。起動時間もさることながら、システムリソースの消費量が…。

システムリソースの消費量(%)
User GDI
Delphi 5 17 16
Delphi 4 10 10
Delphi 3.1 7 13

買い物

 I-O DATA CDV-PB40T、購入。 長いこと不調なまま放っておいたXv20内蔵のCD-ROMドライブ(IDE)をこいつ(SCSI)で換装。 中身はそれぞれ、SONY CDU311-NEとPLEXTOR PX-40TS。

 その他の買い物。書籍。

  • The Genesis of Ultima (LOCUS)
  • Wizardry Collection (LOCUS)
  • Delphi 2.0 ゲームプログラミングの応用50例 トータルプログラミング編 (SOFTBANK)
  • DelphiでWindowsゲームを作ろう! (ピアソン)

Delphi

 読めなくなったCD-Rメディアに関して、 思い出したことが一点。 1996年分の仕事が丸ごと入ってた…。 過去の自分を頼りにはできないのね(泣)。
↑これは、別のCD-Rであったことが後日判明。

 Delphi 4のエディタ上で、キャレットの動きが突然重くなった。 バグかと思いきや、他のアプリでも同様。 十秒ほど悩み、とりあえずコントロールパネルの設定を確認することに。 すると、「キーボード」-「表示の間隔」が思いっきり「遅く」の方に振られていた。 「速く」の端に設定し直したら元に戻ったのだけど、いったいなぜ???

 ファイルタイプ、Delphi Project(DPR)にアクション、 「別のDelphiで開く」を追加した。 標準のアクションでは「DDEを使う」ため、複数のDelphiを開けない。

 Delphi4(Pro)とDelphi3.1(Pro)の「重さ」比べ。 調査環境は、P54C/200MHz/64MB/Windows 95(4.00.950a)。 仮想メモリ(最大)は128MBに設定している。

システムリソースの消費量(%) 起動時間(秒)
User GDI OS起動後初回 平均 2回目以降 平均
Delphi 4 10 10 35 29 32.0 18 14 27 16 23 19.6
Delphi 3.1 7 13 25 28 26.5 14 23 14 13 21 17.0

 両者の登録コンポーネント数が違うので、 Delphi 3.1のほうが不利ではあるが、 それでもDelphi 4は健闘しているように思う。

Delphi4

 Delphi4。 開発環境でドッキング機能を使うと問題アリなのね。 非ドッキング形態の方が使いやすいから関係ないけど。

 そういえば…。 NTTを「みかか」、NECを「みいそ」と表現する場合があるけど、 IBMを「にこも」とか、 Appleを「ちせせりえ」とか表現しているのは見たことないような。