プログラム

C#プリプロセッサ

Debugモードでビルドすると自動的に#define DEBUGされるのね……。ずっと気づかなかった。

System.Data.DataSet.ReadXml()

ちゃんとxml宣言のencoding属性を見てキャラクターセットを判別してるんだな……。

コンストラクタの内部で終了する

コンストラクタの中では通常の終了手順であるApplication.Exit()メソッドを呼び出してもプログラムを終了させられないので工夫が必要なようだ。 調べてみると例外を用いるのが普通……なのかな? メインエントリポイント /// <summary> /// アプリケーションのメイン エ</summary>…

C言語配列

配列はただのポインタであるという仕様を用いて、a[1]→*(a+1)→*(1+a)→1[a]という変態的な書き方ができるということを最近知った。

abs

int/longの整数値型の絶対値を返す関数がabs(int)/labs(long)でstdlib.hに定義されているのに、doubleの実数型の絶対を返す関数はなぜfabs(double)でmath.hに定義されているのだろう……。dabsじゃないのか……。元々float精度でfloat型を引数にとってfloat型を…

Hello world - Wikipedia

Brainf*ckとかWhitespaceとかはわけがわからんね・・・。

BGM

MIDIだとCPU使用率が高くなるので、音質を犠牲にしてAU形式にしたところ、CPU使用率はだいたい30〜40%に抑えられた。しかしBGMを再生するだけでこれだと・・・。

よく調べたところ、AppletクラスのnewAudioClip()メソッドを使えばいいらしい。 試しにMIDIファイルを再生してみたが、リアルタイムでMIDIからPCMへエンコードして再生しているようで常に20〜50%ほどCPUリソースを大量に消費しやがる上に、ループ再生すると…

正規表現の練習

誰も書き込みはしないが、自サイトのBBSにゲートキーパーズホイホイを仕掛けてみた。"GateKeeper[0-9]{1,2}.SONY.CO.JP"でいいのかな。これでGateKeeper0からGateKeeper99まで表現できているはず・・・。

TreeBBS

バグ報告掲示板に2002年に以下のようなことが書かれていた。 // E-Mailがあるとき{email}のリンク文字(空なら名前にリンク) var $if_email = ""; に設定すると名前にリンクされますが、名前の右に{email}と表示されてしまいます。これに関してソースをたど…

コンソール出力の読み取り

コンソール出力を読み取ってダイアログで表示させることに成功。 System.Diagnostics.Process p = new System.Diagnostics.Process(); p.StartInfo.FileName = "command"; p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden; p.Start…

読み取り専用ファイルを書き込み可能ファイルに変更する

どうして読み取り専用ファイルを書き込み可能ファイルに変更できると思うのですか。しかもなぜスクリプトを使用するのですか。 そこにWindowsScriptingHostがあるからさ。 じゃなくて、CDからコピーしたファイルとかWindowsが勝手に読み取り専用にするファイ…

フォルダとそのサブフォルダ内のファイルの一覧を取得する

メモ。

テキスト ファイルから特定の行を取り出して保存する

メモ。

「自動更新」ダイアログ ボックスの表示

Set objAutoUpdate = CreateObject("Microsoft.Update.AutoUpdate") objAutoUpdate.ShowSettingsDialogどんな場面でこのスクリプトが使われるんだろう・・・。