ページ

2004年11月1日月曜日

C:\Windows\Temp のアクセス権

Windows XP Professional (Service Pack 2) での話なんですが、いつの間にか C:\Windows\Temp (正確には %WINDIR%\Temp ) のアクセス権が "aspnet_wp" と "NETWORK SERVICE" だけになっちゃってました(すなわち、Administrator ですら読み書きできない)。いつからこうなっていたのかは定かではありませんし、ひょっとすると最初からこうなっていたのかもしれません(けど、最初からっていうことはないと思う)。ただ、こうなっていることに気付いたのは WinXP SP2 を入れた後なので、やっぱり SP2 が怪しいような。。。


実は WinXP SP2 を入れた直後から Windows Update ができなくなってました。
Windows Update のサイトにアクセスすると 「最新バージョンの Windows Update ソフトウェアを確認しています ...」 というのが表示されて ActiveX コントロールをダウンロード・セットアップしようとするんですが、しばらくまったあと 「申し訳ありません」 というメッセージとともに  0x8DD00004 というエラーが表示されてしまっていました。検索してみるといろいろ 「Windows Update が動かない場合の対処方法」 が公開されてますが、これらを参考にどんな対処をおこなっても Windows Update できるようにはなりませんでした。
けど、自動更新は動いているし 「まっ、そのうちなんとかなるだろ」 とあきらめてました。


次に困ったのは MSDN Subscriber Downloads にある SQL Server 2005 CTP - October 2004 - Developer Edition (English) を入れようとしたときです。
まず、SQL Server 2005 CTP Oct 2004 のセットアップ中に MSXML3 がエラーになってセットアップが先に進めなくなってしまいました。セットアップ CD-ROM (実際は iso イメージですが) の中にある MSXML3.MSI を直に実行してみてもやはりエラーになります。msiexec でログを取ってみたりとかいろいろしたんですが、エラーの原因はわかりませんでした。仕方ないので MSXML3.MSI を他のものに置き換えるという荒業を使ってセットアップを進めました( SQL Server 2005 CTP Oct 2004 に含まれる MSXML3 は MSXML 3.0 SP6 らしいんですが、それを Microsoft からダウンロードしてきた MSXML 3.0 SP5 の MSI に置き換えました。もちろんバージョンが違うのでこんなことをしても正常に動く保証はまったくありません)。
こうやって無理やりセットアップを進めたところ、かなり時間がたってからなにやらメッセージが表示されました。曰く 「C:\Windows\Temp の permission を確認しろ」 とかなんとか。。。


さっそく C:\Windows\Temp を Administrators が読み書きできるようにしてみたところ Windows Update も MSXML3.MSI のセットアップ(SQL Server 2005 CTP Oct 2004 のセットアップ) も問題なくできるようになりました。


うーん、まさかこんなところに原因があるとは。というか、いまどきって "C:\Documents and Settings\USERNAME\Local Settings\Temp" のほうを使うべきなんじゃないのかなぁ?

1 件のコメント:

  1. つい最近、メインマシンを XPSP2 のクリーンインストールに切り替えましたが、C:\Windows\Temp の書き込み権は Administrators, Power Users にもちゃんとあるようです。



    返信削除