Windows Vista上でのソフトウェア開発業務のノウハウ・・・Windows 7 の時代に,あえて逆行したTipsを。
下記ページの,OSシェアの時系列の遷移グラフは,非常に面白い。
StatCounterのOSトップ5シェア遷移グラフ(2011年4月〜2012年3月の1年間)
http://gs.statcounter.com/#os-ww-mont...
- 2011年の10月を境に,Windows XPとWindows 7のシェアが入れ替わり,XPユーザのほうが少なくなった。交差地点の利用シェアは40%。
- Windows Vistaは最初から10%ちょいで低迷。
XPとシェアの入れ替わる対象が,Windows Vistaではなく,Windows 7 である,という点が笑える。
VistaがいかにスルーされたOSであったかがよくわかる。
思えば,Windows XPから初めてWindows Vistaに乗り換えた時,
開発業務が思うように進まなくて色々と困った。
その時の問題点と解決策のメモが,手元にある。
備忘録として残しておく。
※注:
このメモを投稿するのは,これからVistaを使い始めるからではない。
Vistaの利用を終了したので,節目として良い機会だったから。
以下は,Windows XPユーザがWindows Vista上で開発作業を始めるにあたって,会得する必要のあった事項。
(1)管理者アカウントでないと,開発はほぼ不可能で,できることは何もない。Cドライブに自由に書き込めない。
非・管理者のアカウントをもらっても,開発や技術的な作業は不可能である。
各種ソフトを自由にインストールできないため。
昔,ある開発現場にて,
重すぎて漢字の変換に数秒かかるようなVistaマシンと,管理者権限のないアカウントだけを渡された時は,あれは絶望的な状況だった。
Vistaからはユーザアカウントの権限の制御が厳格になったため,マシン内で色々作る人は「偉い」アカウントを持っている必要があるのだ。
(2)プログラム実行時に「管理者権限で実行」する技を覚えておく必要がある。
では,アカウントだけ管理者権限を持っていればいいのか?というと,そうではない。
たとえ管理者アカウントとしてログイン中であっても,
特定の個別のアプリケーションを起動するときに,
明示的に「管理者として」実行してやる必要がある。
例えば,コマンドプロンプトや,Eclipseなどのプログラムの場合だ。
右クリック>管理者として実行 という手順に加え,ファイルのプロパティから「管理者として実行」オプションを付与できる事も覚えておく。
バッチファイルを管理者権限で
http://daiworks.asablo.jp/blog/2007/0...
Windows Vistaでプログラムを管理者モードで実行する / UACによって制限されたプログラムを昇格させて実行する
http://www.atmarkit.co.jp/fwin2k/win2...
- vistaでは普通にコマプロを開くと管理者権限を持っていない。ウィンドウの左上に管理者と表示されるのですぐわかる
(3)XAMPPなどのソフトウェアで,特定のバージョンのバイナリを選択する必要がある。
XPでは動くが,Vistaでは動かないソフト,というのは結構ある。
XAMPPなんかのパッケージソフトが一例。
その場合,Vista上で動くソフトの組み合わせを見つけるために,いろんなバージョンを動作させてみることになる。
バージョンを変えて動けばいいのだが,どうがんばってもVista非対応というケースもある。
例えば,エクスプローラ上で各フォルダの合計サイズを表示してくれるフリーソフト「FolderSize」は,XPまで。
Vistaからは別のソフトを探さねばならない。「CSフォルダサイズチェッカー」とか。
あと,問題なく使えるよにするためには特定の設定ステップを経る必要があるソフトと言うのもある。CSEとか。
Windows VistaでCSEを起動すると「Shellエラー」と表示される
http://www32.atwiki.jp/parepan/pages/...
(4)UACダイアログがいちいち表示されるのを自然の事として受け入れる。
これは慣れの問題。そのうち煩雑に感じなくなる。
何をするにしても,画面が暗くなって許可を求められる。それがノーマル。
(5)ソフト面が遅いことは前提として,ハード面であらかじめ対処しておく。
メモリ2Gはノーマル。開発マシンならなおさら。
XP時代のようにメモリが512MB,とかいうのは,もはや論外。時代錯誤的。
Excelファイル一個開くのに10分,Eclipseの立ち上げに15分,みたいな日常生活を送りたいなら別だけども。
(6)XPまでで重宝していたnetsh diagコマンドが無くなってしまったので,PortQry.exeで代用する。
pingはIPアドレスのレベルで死活監視を行なうが,ポート単位での応答有無を確認するためにはnetshコマンドを重宝していた。
Vista以降,セキュリティ上の理由でnetshコマンドは存在しなくなった。
かわりに,portqry.exeを使うしかない。
XPまで使っていたバッチファイルの中には,書き換える必要のあった物も。
netshコマンドについて
http://answers.microsoft.com/ja-jp/wi...
Portqry.exe コマンド ライン ユーティリティの説明
http://support.microsoft.com/kb/31009...
(7)ユーザアカウントの管理トークンやwhoamiコマンドに慣れる
下記のページなんかを精読しておけばよし。
正式に認められた「Whoami」コマンド
http://itpro.nikkeibp.co.jp/article/C...
- vistaからscやwhoamiコマンドが正式に認められた
- 管理トークン(AT)と,管理者権限がすべてUACによって抑制されている標準ユーザー・トークン(SUT)の2つのトークンがある
- Mandatory Label(割り当てられ委任された権限のレベル)
バッチファイルで、「管理者として実行」されているか?「整合性レベル:低」か?を判定する。(その2)
http://scripting.cocolog-nifty.com/bl...
- UACのMandatory levelには3段階あり,High,Medium,Low。それぞれ,管理者,標準ユーザ,整合性レベルが低い。
Windows整合性レベル
http://sophiakunii.wordpress.com/2010...
- Windows整合性レベル(WIL)=6段階。UACを包括する概念。
- UACのHighよりも上にsystemとかがある。これらの権限情報はログオン時にアクセストークンとして存在,保持。
(8)Java Updateなどで頻繁にUACダイアログが表示されてしまうのをOFFる術を知っておく。
これは,発生し始めると極めてわずらわしい現象。
UAC自体をOFFらないように注意。
Java Automatic Update Auto-Prompts UAC When Idle
http://www.3dgameman.com/forum/softwa...
- UACのおかげでJava Automatic Updateが定期的に実行されるたびに「あなたが実行した場合は」のプロンプトが出て作業が中断される。
- 自分が実行したんじゃないので腹が立つけども,UACをOFFるのではなく,自動アップデートのほうをOFFるように
補足:サポート終了時期などについて
- Windows XP : 2001年発売,2014年サポート終了予定。
- Windows Vista : 2007年発売,2017年サポート終了予定。
- Windows 7 : 2009年発売,2020年サポート終了予定。
XPの終焉について:
Windows XP, Vista, 7のサポート終了日が確定
http://jp.techcrunch.com/archives/201...
- 2012年2月の情報
Windows XPのサポートはあと2年―「そろそろアップデートを」とMicrosoft
http://jp.techcrunch.com/archives/201...
- 2012年4月の情報:依然として何百万台ものXPマシンが稼働中。StatCounterの統計によれば、全パソコンの3分の1以上が XP
- Office 2003のサポートも2014年4月30日まで
Windows 7 への乗り換えを促す情報について:
発売年とバージョン番号の一覧表
http://ja.wikipedia.org/wiki/Microsof...
- Windows XPからWindows Vistaへの移行は順調に進まず、Windows 7では仮想マシンで古いバージョンとの互換性を確保する「Windows XPモード」が追加
XP/Vista/7の対決(MicrosoftがWindows7を宣伝するために作ったページ)
http://www.microsoft.com/ja-jp/window...
Windows 7で改善されるVistaの6つの弱点
http://builder.japan.zdnet.com/os-adm...
- 2009年1月の情報