<< 2008年02月 >>
12
3456789
10111213141516
17181920212223
242526272829

■ 独自ドメイン取得推奨

■ 何か。(仮)

■ 2008年02月08日

Cafe Au Lait Servers 2008年02月08日の記事です。

■ 2008年02月08日(金) Windows Vistaを10倍使いやすくする

Windows Vistaを10倍使いやすくする

大げさだなぁ、俺w

ということで、Vistaを使いやすくする方法。

Windows Vistaは、セキュリティ強化のため、UACという仕組みが取り入れられてます。
ところが、こいつが、XP以前のユーザの感覚からすれば正直うざい以外の何者でもない。
しょっちゅうしょっちゅう昇格の承認ダイアログがでるわけで・・・。

だからといって、UACを切ると、Tempに書き込めなくなったり、一部ソフトがインストールできなくなったり、ネットワーク接続のプロパティが開けなくなったりと不具合てんこ盛りな上、セキュリティ的にも甘くなるので正直遠慮したい。

というわけで、登場するのがVistaのエレベータ
これを使って昇格処理必要なソフトのコマンドラインショートカット作れば、昇格処理も1回で済むというわけですね。

って、ここまでじゃ単なるソフト紹介になっちゃいます。

俺のような面倒くさがり屋な人は、その1回の昇格処理ですら面倒なわけです。

そこで、タスクスケジューラで最上位権限実行してみたら・・・昇格済みウインドウから起動してはいけませんエラー。
Home Premiumだけど無理矢理Administratorアカウント有効にして(注:Home Premium/Basic, StarterはAdministratorは本来使えません)runasしてみると、UAC無効または一般ユーザでは実行できませんエラー。

そこで裏技。
TweakUACなるソフトを使うと、UACを有効にしたまま、昇格の確認ダイアログを出さないという設定ができるようになる。
しかい、このソフトの実行に昇格が必要。

このソフト、コマンドラインオプションとかあれば便利なのになぁ、と思っていたら、実態は単にレジストリ書き換えてるだけだった。
How To Tweak Or Disable UAC In Vista

必要なところだけ抜粋すると、

UACを無効にするとき(再起動必要):
%windir%\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

UACを有効にするとき(再起動必要):
%windir%\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 1 /f

UAC有効のときにダイアログ出さない設定:
%windir%\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 0 /f

UAC有効のときにダイアログ出す設定:
%windir%\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 2 /f

と実行すればいいということだそうです。
cmd.exe /kまではなくてもokですね。

ということで、裏技を試みてみた。
C:\VEElev\にVistaのエレベータおよび必要なファイルは全部つっこむと仮定して以下の話を進めます。

用意するもの:
sleep.bat
============================
@echo off
REM Sleep.bat [秒数]
set /a wtime=(%1+0)*1000
echo WScript.Sleep %wtime% > tmp.vbs
cscript //NoLogo tmp.vbs
del tmp.vbs
set wtime=
============================

uac-tweak.bat
============================
@echo off
%windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 0 /f
call c:\veelev\sleep.bat 60
%windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 2 /f
============================
なんで60秒も?って思うかもしれないけど、多めにとった方が確実だからね。

タスクスケジューラの設定:
タスク1(名前は適当でOK)、最上位権限で実行、タイミング:ログイン時、実行:uac-tweak.bat
タスク2(同上)、通常権限で実行、タイミング:ログイン時・遅延30秒、実行:VETray.exe

これで、UACのダイアログ表示なしにVistaのエレベータを常駐できます。

注意書き:
1.この設定ではログイン後60秒間、UACが実質無効のような状態です。セキュリティ的には弱くなるので自己責任で。
2.Vistaのエレベータの使用も、未使用時と比べてセキュリティ的には弱くなりますので自己責任で。UAC無効よりはマシですけどね。

そんなわけで、10倍くらい使いやすくなった(個人的感想です)。
ってテレビショッピングのダイエット器具かよ(苦笑)。

以下おまけ。
Vista Home Premium/Basic, Starterなのでこんな複雑怪奇なことをしましたが、UltimateやBuisinessならもっとスマートなやり方ができます。
ということで、以下、Home Premiumで失敗した話(Ultimateの人はこっちの方がかなり安全です)。

上の例で示したuac-tweak.batを以下のように変えて作ります。
uac-tweak.bat
============================
@echo off
%windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 0 /f
call c:\veelev\sleep.bat 1
runas /savecred /user:ユーザ名 "C:\VEElev\VETray.exe"
call c:\veelev\sleep.bat 1
%windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 2 /f
============================
ユーザ名のところは各自直す。

で、タスクスケジューラには以下のみ。
タスク:
最上位権限実行、タイミング:ログオン+遅延30秒(即実行だとうまく常駐しないことあり)、実行するもの:uac-tweak.bat

これでokなはずです。
runasの/savecredオプションを使うと、パスワードを初回入力すれば、あとはWindowsがきっちり保管してくれる設定。
ただしHomeでは使えないorz
最初このbat作って実行繰り返して、保管されてる(ように見える)ので大丈夫と思って再起動したら消えてパスワード要求されるというオチが待ってたなんて内緒。

あと、RUNSAってプログラムを使うと、Homeでもパス保存しての権限変更実行ができる、らしいんだけど、Vista Home Premium x64環境上ではうまくいきませんでした(パラメータが変だとかエラーが出ました)。
謎です。これがうまくいくのであれば、こっちを使う方がいいです。

以下おまけ2。
コマンドプロンプト表示されてかっこわりーって人用。
CMDOWってプログラムを拾ってきて、タスクスケジューラで実行するbatの代わりに、cmdow.exeを実行、オプション欄には「/run /hid C:\uac-tweak.bat」と記述すればokです。

ちなみに自分は使ってますw

うん、快適だwwwww

###あくまで自己責任でお願いします。

2008年02月08日の記事に関するコメント

この記事に関するコメントはまだ書かれていません。

■ コメントを書く

名前:

メール(任意):

URL(任意):

コメント:


認証(上の数字を入力)
削除キー(任意):

コメントのCaptcha画像認証システムはCappuccinoが独自に実装したものです。

■ サーバ運営履歴

2008-05-21 [障害]
5/21 3:16から電源が故障したため、サーバを停止しておりました。新サーバへの切り替え作業を進め、5/22 23:00にHTTP、5/23 2:00にメール及びFTPのサービスを再開しました。まだ停止しているサービスも多数あり、ご迷惑をおかけいたしますがご了承下さい。

2008-01-23 [告知]
本日午後、停電のため、全サービスが停止いたします。最大3時間程度のサービス停止が予定されていますので、ご協力お願いいたします。

2007-12-04 [障害]
パッケージのアップデート時に設定ファイルが置き換えられた影響で、内部向けDNS及びコンテンツアップロード用FTPが停止しました。また、対応の対応により、数回にわたり、POP3、IMAP4、SMTP、WWWのサービスが停止しました。詳細な停止時間は、DNS及びFTPが12/4 13:16〜12/5 02:00、POP3、IMAP4、SMTP、WWWが12/4 13:16〜13:20、13:40〜13:45、21:15〜21:21、22:00〜22:05、23:16〜23:30、23:45〜12/5 00:05、00:11〜00:30、00:36〜01:10、01:31〜02:00です。ご迷惑をおかけいたしましたことをお詫び申し上げます。

2007-08-30 [障害]
サーバマシンのフリーズにより、全サービスが15時頃〜21時頃まで停止していました。

2007-08-03 [障害]
メールサーバ障害により、最大約600件のメール配送遅延が発生。

[過去の運営履歴]

■ バナー

redhat Fedora
CentOS Apache
Perl PHP
WWWC META Check [Valid RSS] Powered by AMD AthlonXP and Duron Processor
OpenOffice.org 日本ユーザー会
「オタクだからこそ女の子をまもります」宣言
「3次元になんか興味あるか、ばーか。」宣言
姫は『Sweet sour cherry pie』を歌いたいんですの! 大作戦
やる気のないサイトリング
時間のないサイト運営者リング
CLANNADのネタを知りません
眠りの園(アイコン使用)
社会不適合サイトリング
2005年部門別ギャルゲーランキング
姉は一級建築士