2007/01/28 Windows Vista Ultimate を入れてみました3
2007/01/27 Post-Action Starter Ver. up to 1.11
2007/01/21 Windows Vista Ultimate を入れてみました2
2007/01/20 a! Reg Analyzer Ver. up to 2.46
2007/01/14 Windows Vista Ultimate を入れてみました
2007/01/13 a! Menu Filer, Free AMF Ver. up
2007/01/06 Virus Mail Killer Ver. up to 1.82
Windows Vista にはUAC(User Account Control)という全く余計な機能がありまして、管理者権限でログオンしてもユーザ権限で実行させて、管理者権限が必要になる時いちいち訊いてくるようになります。そのためコントロールパネルを操作してもいちいち訊いてきます。管理者権限の操作が必要なときは、そもそもセッションの切替機能が Windows XP からあるのだから、管理者とユーザ2つでログオンすればいいことです。さらに管理者とユーザでコントロールパネルを2種類に分ければ良いと思うのですが、そういう考えが Microsoft には全くないようです。
よって Windows Vista に関しては買わないか、UAC機能を無効にして使うというのが良いと思います。Windows XP のサポート期間も延長されることが決まったことですし...。
ところで作者作成のソフトの Vista 対応は時間がかかりそうです。一番邪魔な機能はこのUACです。ここに解決のストーリーがあるのですが、この中にあるキーワードで Microsoft の最新のドキュメント(契約するとDVDで送られてくる)2006年8月版を検索しても見つからないものがあります。これでは対応できません。「作者作成のソフトはUAC機能を無効にして使ってください」といえなくはないですが、標準インストールした環境で使えることが基本ですので、暫く(どれくらいか不明)お待ちください。
今回は趣向を変えて Windows Vista を作者のサブマシンに入れてみた結果をお知らせします。作者のサブマシンは PentiumIII 600MHz メモリー384MB です。ここにある「サポートされている最低システム要件」を下回っているのですが、なんと Home Basic Edition がインストールできました。以下がその結果です。今回はこれで終わりです。
今日付けで Post-Action Starter をバージョンアップしました。バージョンアップ内容は以下の通りです。
Ver.1.11 2007/01/27
Windows Vista 上で作者作成のソフトを動かすためには「管理者として実行」がキーになりそうです。例えば、Before Power Off はデフラグを動かしますが、それにはデフラグを「管理者として実行」しなければいけません。それをコーディング上で実現しなければならないのですが、その方法がさっぱりわかりません。サンプルコードが欲しい!。UAC(User Account Control)というのがキーワードになりそうです。Microsoft の最新のドキュメント2006年8月付けを検索してみましたが、よくわかりません。Vista 公開以前のバージョンなので、まだ詳しく書かれていないのかも知れません。
更に大きな問題が発生しました。Vista 上でのデバッグの必要性もあるかなと思い、Vista に Visual C++ 6.0 をインストールしてみました。すると
ここまで来ると、作者作成のソフトを Vista 対応するという保証はできなくなります。UACを無効にするやり方が、ちらほらインターネットで出てきていますが、そういう環境でないと動作させられなくなるのかもしれません。
「Vista は作者が今まで使ったOSの中で最悪だ。」と思えるようになりました。作者はWindows ばかりでなく Machintosh も Unix も Linux も汎用機もミニコンもオフコンも使ったことがあります。それを Microsoft も自覚しているせいかわかりませんが、ここに Windows XP のサポート延長の記事が出ています。とりあえず今回はこれくらいということで。
今日付けで a! Reg Analyzer をバージョンアップしました。バージョンアップ内容は以下の通りです。
Ver.2.46 2007/01/20
また、セキュリティ記述子のグループという概念は取得はできるもののどこにも影響を及ぼさない(変な仕様!!)ということを知り、書き出しまたは表示をやめることにしました。
これがわかる人はほんの少数だろうなあ...。
自作機 sug01 にWindows Vista Ultimateを入れてみました。基本的に作者作成のオンラインソフトは Vista 対応をするつもりではいますが、Windows XP 対応バージョンからかなりの変更が必要そうです。1日使っただけですが、正直言って Vista は使いにくいです。作者はお勧めをしません。使った感想やノウハウをまとめてみましたので参考にして下さい。
今日付けで a! Menu Filer, Free AMF をバージョンアップしました。バージョンアップ内容は以下の通りです。
a! Menu Filer
a! Menu Filer の2番目の修正はちょっとした改良です。
Free AMF の2番目の修正は恥ずかしいバグです。
Free AMF の3番目の修正はずっとそのままにしていてついでに行った修正です。
皆様明けましておめでとうございます。今年もよろしくお願いします。
今日付けで Virus Mail Killer をバージョンアップしました。バージョンアップ内容は以下の通りです。
Ver.1.82 2007/01/06
という画面が出てきました。またここには、Vista上では Visual Studio 2005 しか動かないと書かれています。また「管理者として実行」するアプリケーションを作るには「マニフェスト」がなければならず、それは Visual C++ 6.0 ではできそうもありません。すなわちコンパイラーの更新を行わなければいけないのかも知れません。
2007/01/20 a! Reg Analyzer Ver. up to 2.46
セキュリティの継承に関して作者は少し誤解をしていました。ACEの継承ルールの中で全てを実現させていると思っていましたが、実はセキュリティ記述子の中に継承からの保護というフラグがあり、それも関係していることがわかりました。GetSecurityDescriptorControl というAPIで取得できるのでその値を書き出しまたは表示させることにしました。
2007/01/14 Windows Vista Ultimate を入れてみました
自作機 sug01 のエクスペリエンス インデックス
自作機 sug01 の環境
コマンドプロンプトを右クリックして「管理者として実行(A)...」を選択(ここがミソ)。以下必要そうなコマンドのみを述べる。
後のコマンドは bcdedit /? で調べてください。
2007/01/13 a! Menu Filer, Free AMF Ver. up
Ver.2.39 2007/01/13
Free AMF
Ver.1.07 2007/01/13
1番目の修正は、両方共通のバグ修正です。
2007/01/06 Virus Mail Killer Ver. up to 1.82
1番目の修正は、この間違いのせいで作者は大事なメールを[文字化けメール]として1つ消してしまいました。実はJISコードのエスケープは結構ムヅカシイのです。ここの「表1.JISコードの仕様」のとおりにプログラムを作ることにしました。
2番目の修正は、メールサーバ側の問題のような気がします。POP3の仕様では複数行応答の場合に、最後に「.(ピリオド)」のみの行をメールサーバ側で送信しなければなりません。Virus Mail Killer は「TOP」というコマンドを送信して、メールの先頭部分をメールサーバからもらうのですが、最後の「.(ピリオド)」のみの行が送られていないために Virus Mail Killer は受信を続けようとしてタイムアウトになってしまいます。どうやらメールが multipart で最後の boundary「--boundary文字列--」が抜けている場合にそういう風になっている気がします。作者のプロバイダーである @nifty の場合は全く問題ないのですが、他の方からの報告でデバッグを手伝って頂き、そういう結論になりました。結局 Virus Mail Killer の処理としては「TOP」コマンドがタイムアウト(10秒)したときは受信処理を止めてそのまま処理を続けさせることにしました。
3番目の修正は Debug モードで現れるバグの修正です。