「ゴロ寝deスク アルミ」を買ってみた。発売元のサンコーではなく、ポイントの付くヨドバシで購入。写真にあるようにベッドの上で使うつもりではなく、普段はただの机として使うつもりだが。
帰ってから早速使ってみたが、アルミ製なので、発熱の多い CF-R6M も熱くならない。CF-R2C と並べて 2台置ける。使っていると多少揺れるのが気になるが、構造上仕方ないか。
本と雑誌を合わせて 3冊購入。競合他社の CPU が載った基板が付録の Interface 5月号と、その関連記事が載った 6月号、後は仕事関連の勉強用に「NHKデジタルテレビ技術教科書」を購入。Interface では「Windows Vista時代のデバイス・ドライバ開発」という連載が始まったのも興味深い。(とは言うものの、Vista では個人によるデバイスドライバの開発はできなくなったに等しいわけだが。)
この前の VS.NET 2003 の統合の話の続き。MSI ファイルをバイナリエディタではなく、Orca で編集してみた。Orca とは MSI ファイル編集用に MS が公開しているツールで、Windows SDK や Platform SDK に同梱されている。SDK をインストールしただけでは Orca はインストールされず、SDK の実行ファイルディレクトリにある Orca.Msi を実行することでインストールされる。
Orca で vs_setup.MSI を開き、画面左側の Tables で Media を選択し、右側の VolumeLabel の欄を VSENTD1 などに統一する。MSDN の MSI ファイルである、MSDN\msdn.msi も同じようにしてボリュームラベルを変更する。この方法でも無事に、CD の入れ替えメッセージが表示されず DVD からそのままインストールできるようになった。
ググってみたらすでに同じことをしている人が見つかった。(Creating a DVD Installation Disk for MS Visual Studio.NET Professional 2003) ところで、VS.NET 2003 DVD 版の正しいボリュームラベルは何なのだろうか。
所有している VS.NET 2003 はアップグレード版なので、インストール時に VS.NET 2002 のディスクを入れるように表示されて鬱陶しい。
何とかできないか調べてみた。ディスクのチェックは、\Setup\vs70pgui.dll で行われているようだ。ごにょごにょしてできあがり。
VS.NET 2003 Enterprise 版には、VSS 6.0d が含まれているのだが、全く使っていないのですっかり存在を忘れていた。これも一緒に DVD に入れておくか。で、VSS 6.0d は、VS 6.0 SP6 で更新されると・・・、ふざけとるんか?
VSS 6.0d に VS6SP6 を統合できるか試してみたが、いくつかインストールするべきファイルが増えているようで、inf ファイルや stf ファイルなどを手で書き換える必要がありそうだ。面倒なので断念。
[22259] 9821チェックについて を参考にして、PC-98 に VS.NET 2003 をインストールできるか試してみた。
VS.NET 2003 も上記の VS.NET 2002 と全く同じようだ。\Setup\setup.sdb に
[VS Custom] AllowInstallToNEC=True
を追加して、それを DVD ドライブのルートにもコピーすればよい。それ以外の場所にある setup.sdb は、改変しなくてもよさそう。
最初の NEC チェックを回避して、インストール画面にたどり着けることまでは確認したが、インストールはしていない。
VS6 SP6 の PC-98 チェック回避方法に、以前の方法よりも簡単な方法があることに気付いた。以前は実行ファイルを書き換えていたが、今回はテキストファイルの書き換えだけですむ。
sp698ent.stf に、
13 Group 23 24 26 34 27 28 30 21 22 14 20 16 17 15 35 36 18 19 41
という行があるので、それを
13 Group 26 34 27 28 30 21 22 14 20 16 17 15 35 36 18 19 41
というように、Group の後の 23, 24 を削除すればよい。ちなみに、23, 24, 25 の行を見ると、
23 CustomAction "sp698ent.dll,DetectNEC98" 24 Detect NEC98 Depend "23 ? 25" 25 CustomAction "sp698ent.dll,ExitInFinalize,88"
となっており、いかにも怪しいことが分かる。上記の作業でこれを実行しなくなる。
SpringM を Vista でも使っているが、デスクトップにアイコンを登録すると、32x32 のアイコンが 48x48 に拡大されて、やたら汚いのが気になっていた。IcoFX というアイコンエディタを使って、48x48 のアイコンをでっち上げてみた。ほかのアイコンはフルカラーのきれいなアイコンなのに比べると、かなり見劣りするが、それでも前よりはましなアイコンになった。
ついでなので、属性やタイムスタンプ変更画面のサイズも Vista に合わせて再調整してみた。Vista でも、関連付けの実行が効かなくなる問題が発生しているが、原因はまだ判明していない。
SpringM 関係で何かおもしろい話題はないかと少しググってみると、「色々日記(ざ・めも) | TortoiseSVNのメニューが春Mで表示できない」というのを見つけた。オーナードローがらみでうまく表示されないらしい。そのうち TortoiseSVN も使ってみようかと思っていたので、メモしておこう。
Let's note に 2.0 をインストールしてみたが、自分のデスクトップマシンに比べて、縞々があまり目立たない。液晶ディスプレイの違いか。どっちがいいのだか?
2.0 では添付ファイルのアイコンが大きいのが邪魔だ。about:config で mailnews.attachments.display.largeView を false に変更すればよい。
1.5 とは違い、添付ファイルの表示領域の高さをドラッグして変更できるのは非常によい。
WDK のコンパイラを少し試してみた。バージョンは 14.00.50727.220 で、Windows SDK の 14.00.50727.762 に比べると少し古い。cl /MD でコンパイルすると、msvcrt80.dll ではなく msvcrt.dll が使われる。
未だに VC6 を使っている理由の1つが msvcrt.dll が使えることなのだが、この目的に WDK を使うのもありかもしれない。環境を整えるのがいろいろ面倒だが。
久しぶりに Thunderbird 用の拡張を作ろうとしたら、開発環境が全く整っていなかった。XUL Apps > Tips > XULアプリの開発環境を整える - outsider reflex を見て、環境を整えてみた。
まずは XUL キャッシュの無効化。
user_pref("nglayout.debug.disable_xul_cache", true);
about:config には無いが user.js では設定可能。これを
pref("nglayout.debug.disable_xul_cache", true);
というように、user_pref() ではなく pref() とすると、prefs.js には保存されず、user.js にこの記述がある間だけキャッシュが無効になるようだ。pref() とは一体何なのか、少し調べてみたが分からなかった。
次に、JavaScript の設定。
user_pref("javascript.options.strict", true); user_pref("javascript.options.showInConsole", true);
Thunderbird では showInConsole はもともと true になっている。
次に、dump() の有効化。
user_pref("browser.dom.window.dump.enabled", true);
この設定をした上で thunderbird.exe -console というように -console オプションを付けて起動すると dump() が有効になる。
tclocklight-050716 がベースにしている、tclocklight-040905 が公式サイトから入手できなくなってしまったので、Internet Archive を漁ってみた。TClock Light開発中 (Internet Archive) から無事入手できた。
tclocklight-050716 では、tclocklight-040702-3 からかなりソースが変更されているが、tclocklight-040905 で既にかなり変更が加えられていたようだ。
mailkey Ver.0.02 作成中。
日本語版 Thunderbird 2.0 ではメールの返信をすると、「〜 さんは書きました:」と日本語表示になってしまう。Netscape 4.x の頃から今までずっと「〜 wrote:」だったので、なんか間抜けな感じがする。
about:config で mailnews.reply_header_authorwrote の値を、「%s さんは書きました」から「%s wrote」に書き換えると、今までと同じ動作になった。
Thunderbird 1.5 の頃から気になっている挙動がある。2.0 になっても改善されていなかったので詳しく調べてみることにした。
Thunderbird では、スペースキーを押すことで未読メールを次々と読み進めていくことができる。一方 1.5 ではキュリティー強化の目的で、フィッシング詐欺メールの判定機能や、画像を自動的に読み込まなくする機能が付いたが、「フィッシングマークを解除」ボタンや「画像を表示する」ボタンを押すとスペースキーでメールを読み進めることができなくなってしまう問題がある。一度、画面内のどこかをクリックすると再びスペースキーが有効になるが、面倒である。
DOM Inspector を使って、それぞれのボタンの ID と、押されたときにどの関数が呼び出されるかを調べてみた。ジャンクメールとして扱わないようにするボタンでは、前述のような問題が発生していないので、比較のためにそれも調べてみた。
ID:junkBar -> JunkSelectedMessages(false); (mailCommands.js) ID:remoteContentBar -> LoadMsgWithRemoteContent(); (mailWindowOverlay.js) ID:phishingBar -> MsgIsNotAScam(); (mailWindowOverlay.js)
LoadMsgWithRemoteContent() や MsgIsNotAScam() では、設定を変更した後で、MsgReload() を呼び出してメッセージをリロードしていることが分かった。スペースキーを押すと、フォーカスがボタンに残っているために再度ボタンが押されてしまい、メッセージがリロードされるためにスペースキーで読み進めることができなくなっていたようだ。MsgReload() の後に、フォーカスをボタン以外に移せば良さそうである。フォーカスを移すには、SetFocusMessagePane() を使うのが良さそうである。これは、window.content.focus() を呼び出すのと同じことのようなので、window.content.focus() を呼び出してみたところ、うまくいった。mailkey に組み込んでみるかな。
Thunderbird 2.0 をインストールしてみた。第一印象は・・・縞々。
Thunderbird 1.5 では、添付ファイル名の文字化けが問題になったが、2.0 でどうなったのか、少し調べてみた。添付ファイル名に関する挙動は mail.strictly_mime.parm_folding で設定できる。この値は 1.5 では 2、2.0 では 3 がデフォルト値になっている。1.5 ではこの値を 0 にすることで OE での文字化けは解消されるということだったが、2.0 ではどうなったのか、よく分からない。Bugzilla-jp Bug 4876 をちらっと見たが、やっぱりよく分からない。
後でさらに調べてみたところ、Mozilla-gumi Forum #37845 によると、2.0 ではデフォルトの 3 で問題ないようである。(参考:設定値の表)
UltraVNC の viewer を使うと、Alt + アルファベット を入力したときに、音が鳴るのが以前から気になっている。ちょっと調べてみることにした。
音を鳴らしているようなところを探ってみると、vncviewer/ClientConnection.cpp の ClientConnection::ReadBell() に、
if (! ::PlaySound("VNCViewerBell", NULL, SND_APPLICATION | SND_ALIAS | SND_NODEFAULT | SND_ASYNC) ) {
というコードがあった。PlaySound() でファイル名ではなく、"VNCViewerBell" という名前を指定しているのが気になった。MSDN には、レジストリで関連付けが行われていると書かれているが、レジストリのどこに書かれているのかが書かれていない。レジストリを探してみたところ、以下の位置に書かれているのを発見した。
REGEDIT4 [HKEY_CURRENT_USER\AppEvents\EventLabels\VNCviewerBell] @="Bell"
これを書き換えてみたが、音は変わらなかった。結局原因は違っていた。入力したアクセスキーが無かったときに鳴る Windows 標準のメッセージ音だったようだ。しかし今度は、なぜ TightVNC の viewer では音が鳴らないかが分からなくなってしまった。API で設定できるのだろうか?
vista ジャンクション でググって見つかった面白そうなページをいくつか。
Vista では、ディレクトリに移動できなかったり、移動できてもディレクトリの中身を見ることができなかったりする特殊なリンクが多用されている。
例えば、C:\Users\ユーザー名\Application Data は、dir を実行すると、「ファイルが見つかりません」と表示され、. や .. すら表示されない。また、C:\Users\All Users は、E:\ProgramData へのシンボリックリンクだが、cd "C:\Users\All Users" としても、「指定されたパスが見つかりません。」と言われてしまう。
どうも ACL の設定が関係しているような感じである。
自分でジャンクションを作って、いろいろ試してみた。プロパティを開いて、セキュリティタブ → 詳細設定 → 編集 と行って、「フォルダの一覧/データの読み取り」を拒否にした場合、ディレクトリへの移動は可能だが、中身は空だった。代わりに「フォルダのスキャン/ファイルの実行」を拒否にした場合はディレクトリへの移動ができなかった。ただし、上記 All Users の場合とは異なり、「アクセスが拒否されました。」と表示された。
中身の見えないリンクに意味はあるのだろうかと思ったのだが、リンク先にディレクトリを作ることは可能なようである。そしてそのディレクトリはカレントディレクトリにすることもできるし、中身を見ることもできる。
XP でもジャンクションの ACL を編集したときの挙動も確認してみたが、Vista とほぼ同じだった。フォルダの一覧を拒否する設定にすると、XP のエクスプローラでジャンクションを削除しても、リンク元の中身が消去されなかった。Vista でリンクの中身が見えなくしてあるのは、XP とのデュアルブートにしたときの安全策かもしれない。
Vista の新 API である CreateSymbolicLink について調べていて見つけた面白そうなページをいくつか。
Vista で新規追加されたシンボリックリンクや、対応強化されたジャンクションについて少し調べてみた。
今まではジャンクションを作成するソフトとしては、「リンク/ジャンクション作成ツール」などがあったが、Vista からは、mklink というコマンドが使えるようになった。ただ、mklink はディレクトリのリンクを作る場合には、わざわざ /d を指定しないといけなかったり、ln とは引数の順序が逆だったりと、あまり使い勝手は良くない。なお、ハードリンクの作成なら XP 標準の fsutil でも作成できる。(Windows XPの正体 強化されたコマンドライン・ツール(中編))
ジャンクションの作成には管理者権限が不要だが、シンボリックリンクの作成には管理者権限が必要なようだ。なぜそうなっているのかが分からない。Unix だと一般ユーザーもシンボリックリンクをがんがん使っているというのに。(後日、設定次第で管理者権限のないユーザーでもシンボリックリンクを作成できるようになることを知った。)
エクスプローラでの対応も調べてみた。ジャンクションもシンボリックリンクもどちらも、ショートカットファイル (.lnk) と同じように、アイコンの左下に小さな矢印が表示される。シンボリックリンクの場合は、プロパティを開くと、ショートカットタブが現れ、リンク先の確認ができる。しかし、ショートカットファイルとは異なり、リンク先を変更することはできない。相対パスでリンクを行っている場合でも、リンク先は絶対パスで表示される。
XP では、ジャンクションを削除すると、リンク元のディレクトリの中身まで削除してしまうという大バグがあったが、Vista では、このバグは修正されているようだ。(何回か試した範囲では問題なかった。)
dir コマンドも強化されている。ジャンクションの場合には <JUNCTION> と表示されるのは今まで通りだが、ディレクトリ名の後ろに、[] でリンク先が表示されるようになっている。また、ファイルへのシンボリックリンクは <SYMLINK>、ディレクトリへのシンボリックリンクは <SYMLINKD> と表示される。リンク先を見れば、相対リンクか絶対リンクかもすぐに分かる。
Vista では、ジャンクションやシンボリックリンクが多用されているが、そのディレクトリに移動できなかったり、移動できてもディレクトリの中身を見ることができなかったりする。どういうことなのか、もう少し調べてみよう。
Vista に、VS.NET 2003 (Vista 非対応) をインストールしてみようとしたところ、問題発生。ネットワーク経由でインストールしようとしたのだが、コンポーネントが読み込めないなどというエラーが出てインストールできなかった。Vista では、セキュリティ強化の一環でネットワークの先のプログラムの実行に制限が加わっているようなのだが、それが原因なのだろう。
ネットワークからインストールできないとなると、オリジナルの CD-ROM からインストールしないといけなくなるわけだが、6枚の CD-ROM を入れ替えながらインストールするのは非常に面倒なのでなんとかしたいところである。(今までは、CD-ROM を自分で 1枚の DVD-R にまとめて、それをネットワーク経由でインストールしていた。(DVD から直接インストールしようとすると、途中でディスク入れ替えメッセージが表示されて、インストールが先に進まなくなってしまう。))
VS.NET 2003 のディスクを 1枚にまとめて、DVD から直接インストールできるようにする裏技があるようなので試してみることにした。せっかくなので、インストールにやたら時間のかかる SP1 と KB927696 (SP1 MFC71.DLL セキュリティ アップデート)、および、KB927696 の関連のソースファイル (oleui2.cpp) も一緒に統合してしまうことにした。(なお、CD-ROM を一つにまとめるだけならば「ネットワーク コンピュータに Visual Studio .NET をインストールする方法」が参考になる。)
統合を行うバッチファイルを作ってみた。CD-ROM ドライブは Q: とし、SP1 と KB927696 の実行ファイルと oleui2.cpp は c:\tmp に入れた状態で、merge_vs2003.bat を実行すると、c:\vs2003 に SP1 やセキュリティアップデートを統合したものができあがる。(msiexec /p 〜.msp /a 〜.msi で統合するのがポイント)
次に c:\vs2003\setup.ini を編集する。WCU と MSDN のディレクトリ位置の指定を DVD のディレクトリ構成に合わせるために Dir= の部分を以下のように変更。
[Baseline] Dir=.\wcu [Documentation] DIR=.\MSDN
また、プロダクトキーを自動で入力させるために c:\vs2003\Setup\setup.sdb を編集する。25文字の英数字をそのまま書く。(ハイフンを入れてはいけない。) ついでに、イメージタイプを CD から DVD に変更。(必要ない気もするが。)
[Product Key] XXXXXYYYYYZZZZZVVVVVWWWWW [VS Custom] ImageType=DVD
ここまでの作業で、HDD からのインストールや、ネットワーク経由のインストールは問題なく行えるようになるはずである。
さて、ここからが某所で紹介されていた裏技だが、DVD から直接インストールできるようにするには、バイナリエディタで MSI ファイルを直接書き換える必要がある。ファイルサイズが 90MB や 15MB と大きいので、Bz などファイルマッピング機能があるエディタを使うと便利である。
まず、c:\vs2003\vs_setup.msi を開くと、Enterprise 版ならば VSENTD1, VSENTD2、Pro 版ならば VSPROD1, VSPROD2 という文字列が見つかるはずである。これを VSENTD1 や VSPROD1 に統一する。
次に c:\vs2003\MSDN\msdn.msi を開くと MSDVVSD1, MSDVVSD2, MSDVVSD3 という文字列が見つかるはずである。これも先ほどの VSENTD1 や VSPROD1 に書き換える。ただしこのままでは文字数が1つ足りないので、最後の1文字は 00 で埋める。
あとは c:\vs2003 以下のファイルを DVD に焼けばよいのだが、その際に、ボリュームラベルを先ほど指定した VSENTD1 や VSPROD1 に設定すれば完了である。
もしかして、統合後のディスクを使ってインストールした場合、アンインストール時や修復インストール時には、改変した vs_setup.MSI が必要? 無くさないようにちゃんと管理しておかないといけないかもしれない。
Vista で xcopy /? として xcopy のヘルプを表示させたところ、robocopy コマンドを使うようにと表示された。もともと Win2k/XP などではリソースキットに含まれていたコマンドらしいが、Vista から標準搭載されることになったようだ。
コマンドラインオプションは xcopy と共通のものも多いが、コピーだけでなく、ディレクトリの同期を取れるように強化されたコマンドのようだ。
Vista で VC6 を動かしたときに出るメッセージをキャプチャーしてみた。
この前買った、ワイヤレスレーザーマウス V450 を Vista で使ってみた。OS 標準のドライバで横スクロールも使えた。
デスクトップマシンでサスペンドから復帰できなくなってしまった件を調査。4/11 の Windows Update でインストールされた更新を3つとも (KB930178, KB931784, KB932168) 削除してみたが、相変わらずサスペンドから復帰できない。となると、原因は HDD の増設か、カードリーダーのどちらかということか?
ちなみに、PC-98 の Win2k に KB931784 を入れるとまともに動かなくなるらしい。
Vista に Cygwin をインストールしてみた。Cygwin Bash Shell の初回起動時は管理者権限で起動しないと、環境設定がうまくいかないようである。また、/etc/group, /etc/passwd がおかしいので再作成するようにとのメッセージも表示された。こちらも、管理者権限で起動し、メッセージ通りに再作成したところ、無事に Cygwin が使えるようになった。
今回の Windows Update のメモ。
デスクトップマシンが不調である。サスペンドから復帰できず、反応がなくなってしまう。最近やったことというと、Windows Update、HDD の増設、メモリカードリーダーの増設などだが、原因はなんだろう。
Wheel Redirector のソースが Software Archives - Group Finity で公開されていることを知った。mAgicTV と Wheel Redirector の相性が良くない原因でも探ってみるかな。
nLite を使って WinXP インストール CD を作ると文字化けが起こる原因をしばらく調べていたが結局分からず他の方法を試してみることにした。
HFSLIP というソフトを試してみた。(日本語訳) HFSLIP も nLite と同じく、slipstream 方式で hotfix などを統合できるソフトである。ダウンロードしてみて驚いたのは、ソフトの本体が 210KB, 3600行のバッチファイルだったということ。こんなに巨大なバッチファイルを書くなんて信じられない。
hfslip-1.4.2.cmd を実行すると、カレントディレクトリにいくつかのディレクトリが生成される。SOURCE\ には、元の CD-ROM の中身をコピーし、HF\ には hotfix や SP2 をコピーする。その他、必要なファイルをそれぞれのディレクトリにコピーしたら、再度 hfslip-1.4.2.cmd を実行する。質問に答えていくと、SOURCESS\ に SP や hotfix などを統合したものができあがる。
nLite とは違って、SP+メーカーとの連携はあまりうまくいかない。SP+メーカーの後に HFSLIP を実行しても、HFSLIP の後に SP+メーカーを実行しても、\I386\SVCPACK.INF が上書きされてしまう。2つを組み合わせて使うには、\I386\SVCPACK.INF の手修正が必要なようだ。統合作業を全部 HFSLIP だけで済ませられるのなら楽なのだが、.NET Framework や MSJavaVM の統合は、SP+メーカーを使った方が楽である。
KB931836 を HFSLIP で統合すると、qfecheck でインストールが正常にできているか確認しようとしたときにチェックが途中で止まってしまう。KB931836 も SP+メーカーで統合した方が良さそうである。KB923789 は slipstream 方式での統合はできないようで、どちらで統合しても結果は同じようだ。
HFSLIP + SP+メーカーで作った WinXP インストール CD を試してみたが、hotfix で更新されたファイルのタイムスタンプが、HFSLIP で作業したときの時間になってしまった。タイムスタンプを見ただけではファイルが新しいのか古いのかが分からず、これでは都合が悪い。原因を調べてみると、makecab コマンドでファイルを圧縮する際に、タイムスタンプを設定していないのが原因のようだ。自作の touch を使ってタイムスタンプを設定してみるようにした。(hfslip-1.4.2.diff)
最終的には、HFSLIP で SP2 と各種 hotfix を統合、SP+メーカーで、.NET Framework 、MSJavaVM、KB931836、Windows Update Agent 2.0 を統合し、\I386\SVCPACK.INF を手動で結合、\I386\SVCPACK\HOTFIXES.CMD を編集して自動で再起動しないように変更、という形に落ち着きそうである。
HFSLIP のバッチファイルを見ていると、%~dp0 などの謎の記号が多数。cmd で拡張されたバッチファイルの拡張記法だということは分かるのだが、正確な意味が分からない。set /? を見れば分かるかと思ったが載っていなかった。for /? の方に載っていた。
無線 LAN の暗号化の1つである WEP を短時間で破る方法が公開されたとのこと。
PC-98 用に持っている WLI-PCM-L11GP という古い無線 LAN アダプタが、WEP にしか対応していなかった記憶があったので、今まで WEP を使っていたが考え直したほうが良さそうだ。
WEP 以外の暗号としては WPA などがあるが、その中でも WPA-TKIP は、ハードウェアの変更なしで実装できるらしい。WLI-PCM-L11GP のドライバ を確認したところ、β版で WPA-TKIP に対応しているようだ。TKIP を使うことによる速度低下がどの程度なのかが気になる。
MAC アドレスによるフィルタリングも有効にしておいたほうがいいのかな?
ラトック、Windows Mobile機向けUSBホストCFカード - REX-CFU1 の後継機が出るようだ。REX-CFU1 のドライバが作りかけのままになっているというのに・・・。新しいチップを使っているとのこと。ISP1362 などのチップでも使っているのだろうか。
土日の間、Win2000/XP/Server2003 SP+Hotfix統合InstCD などを参考にして、SP+メーカーや、nLite (日本語解説サイト) を使って、WinXP のインストール CD の作成・カスタマイズを行っていた。作った CD は、Virtual PC 2004 で動作確認。
SP+メーカーは、操作は簡単なのだが、hotfix などは、Windows のインストール時に、自動的にインストールを行うだけで、完全に統合を行うわけではないので、インストールに時間が掛かってしまう。
nLite は、hotfix の統合は、必要なファイルを取り出して、インストール CD のファイルに上書きする方式になっており、インストール時間も短く、インストール CD のサイズも小さくなる。しかし、統合できない hotfix がいくつかある。
実際に、SP+メーカーと nLite を使ってみたところ、かなりのトラブルに遭遇した。以下はその記録。
Windows Update Agent 2.0、.NET Framework 1.1, 2.0 およびそれらの更新プログラム、MS Java VM、Windows Script 5.6、KB923789 (Flash Player)、KB923689、KB931836 あたりは、nLite での統合がうまくいかなかった。WinXP SP2 と、これらの更新プログラムの統合は、SP+メーカーで行い、残りの hotfix の統合は nLite を使って行った。(KB923689 と KB931836 は、nLite でも統合ができそうなのだが、SP+メーカーとの間で不整合が発生してしまった。)
SP+メーカーでは、インストール時の 2回目の再起動の後にプログラムをインストールする際は、インストールが終わるともう一度再起動を行うようになっているが、これがどうも調子が良くない。設定を行おうとしているところで再起動になってしまうため、一部の設定が中途半端なままになってしまうことがあるようだ。\I386\SVCPACK\HOTFIXES.CMD を書き換えて、再起動を行わないようにしてみたところ、大丈夫そうだ。
Virtual PC 付属の、バーチャルマシン追加機能を、ゲストの WinXP にインストールするとスタンバイや休止状態が使えなくなるようだ。Virtual PC の機能を使えば、状態の保存は可能なので、スタンバイなどは必要ないということなのだろう。しかし、最初はこれが原因でスタンバイが使えなくなったということに気付かず、なぜ使えなくなったのかしばらく悩んだ。
nLite で、プロダクトキーなどを自動入力できるように設定すると、インストール CD から回復コンソールを起動したり、修復インストールを行うことができなくなってしまうようだ。どうやら、自動応答ファイルである \I386\WINNT.SIF が存在するとそうなるようである。そこで、WINNT.SIF を削除してみたところ、今度は、インストール中に文字化けが発生するようになってしまった。nLite がどこかでおかしな言語情報を設定しているのかもしれない。
インストール用の CD とは別に、回復コンソール起動用の CD を作った方がいいのだろうか。本末転倒な気もするが・・・。
インストールが終わってから、QFECHECK を使って、hotfix のインストールが正しくできているか確認してみると、KB923689 のインストールがうまくいっていないと出た。再度手動でインストールし直しても、相変わらずおかしいようだ。KB923689 で更新される \WINDOWS\system32\wmvcore.dll のバージョンを調べてみると、正しく更新されている模様。謎である。
先月の spam メールの集計結果。着信拒否にならなかった spam が少なくとも 1875通。そのうち、@nifty の迷惑メールフォルダーでも Spam Mail Killer でも spam として認識できなかったものは 0通。逆に迷惑メールフォルダーで spam として誤認識したものは 1〜2通。先月も、@nifty の迷惑メールフォルダーの判別精度は非常に良かった。基本フィルターだけでほぼ完璧に判別できている。何があったのだろうか。