2009年11月09日

ブートマネージャの文字化け

Windows Vista や Windows 7 でデュアルブート環境を作っている場合に、ブートマネージャが文字化けしたときは、おそらく、ブートマネージャの設定に、

path \bootmgr

というのが含まれています。bcdedit コマンドで確認しましょう。
OSのインストールディスクで起動してブート環境を自動修復したときは、必ずこのように設定されてしまうようですが、こんなパスは通常存在していません。

これを削除すると、なぜか文字化けが解消されます。
削除するには

bcdedit /deletevalue {bootmgr} path

で OK。
posted by sjoe at 22:53| Comment(2) | TrackBack(0) | Vista

2009年06月07日

Vista のブートマネージャ

MBR をクリアしてしまい、Vistaが起動できなくなったら、ブートマネージャをインストールすればよい。
以下のように行う。

Vista のインストールディスクで起動。(もしくはシステム修復ディスクでも起動できる)
システムの修復を選び、コマンドプロンプトを起動して、
次のコマンドを実行。

bootrec /fixmbr
bootrec /fixboot

とやる。
Windows 7 でも同じだ。


そういや、Xp の場合は、同じようにコマンドプロンプトを起動して、
fixmbr
fixboot
だったような気がするな。
posted by sjoe at 22:34| Comment(0) | TrackBack(0) | Vista

2009年04月21日

通常使うプリンタ が 変わる

Windows Vista で、「通常使うプリンタ」が勝手に変わってしまうことが頻繁にあった。ググってみると、原因はいろいろあるようだったが、どうもうちの場合に該当するのは見つからなかった。

最近、原因の特定ができた。

原因はリモートデスクトップ。
リモートデスクトップは、他のPCに接続したときでも、ローカルのプリンタが使えるように、ちょいと細工をするようになっている。
こいつが悪さをしていた様である。

接続すると、接続先のPCの「通常使うプリンタ」は、新たにリダイレクトされたプリンタに設定されて、それがローカルのプリンタを指すので、印刷したものは手元のプリンタに出力されるようになる。

仮にこの機能を「プリンタリダイレクト機能」と呼ぼう。

これはこれで便利だと思うが、切断したときにその設定が元に戻らないのである。別のプリンタに設定されることもあれば、場合によっては「通常使うプリンタ」がどこにも割り当てられていない状態になってしまうこともある。

この状態で、接続先のPCの前に座って、ローカルとしてログインすると、結果的に「通常使うプリンタ」が勝手に変わってしまったことになるのだ。

もっともうちの場合、プリンタはネットワーク接続で、どこのPCからでも同じプリンタで印刷するようにしている。

したがって、リモートデスクトップのプリンタリダイレクト機能など全く意味がない。リダイレクトしてもしなくても同じプリンタで印刷するのだから。

なので、リモートデスクトップを使うときは、このプリンタリダイレクト機能をやめればよい。

リモートデスクトップを起動して最初のウィンドウで、「オプション」をクリックすると、接続の詳細設定ができる。ここで、ローカルリソースタブを開き、ローカルデバイスとリソース枠の中のプリンタのチェックを外せばいい。

これで、プリンタリダイレクト機能が働かなくなるので、接続先のPCの「通常使うプリンタ」が変わってしまうこともなくなる。

気づいてみれば他愛もないことだが、切断後の設定がもとに戻らないってのは、なんともお粗末な処理だ。

ちなみに、これはvista から vista に接続した時の話。他の組み合わせの場合は、未確認。
posted by sjoe at 20:58| Comment(0) | TrackBack(0) | Vista

2008年03月23日

Windows Vista のファイルの仮想化について

Vista はユーザーがシステムフォルダを書き換えてしまうのを防ぐために、ファイルを仮想化している。
 つまり、アプリケーションを使用中に、c:\windows や c:\Program Files 以下のフォルダに書き込みが発生すると、実際にはそこには書き込まず、別のフォルダに書き込んで、それでつじつまが合うようにする仕組みが、ファイルの仮想化だ。

実際どこに書き込まれているのかをメモしておこう。

C:\Users\User_name\AppData\Local\VirtualStore

である。メモしておくとあとで役に立つだろう。
同様にレジストリも同じような仕組みで保護されている。レジストリの実際の場所は以下の通り。

HKEY_CURRENT_USER\Software\Classes\VirtualStore

参考 http://support.microsoft.com/kb/927387/ja
posted by sjoe at 13:23| Comment(0) | TrackBack(0) | Vista

2008年03月20日

Firefox、ショートカットダブルクリックでエラー

Windows Vista で、Firefox を既定のプログラムに設定しているとエラーがでる時がある。
URLのショートカットファイルを開こうとすると「〜が見つかりません。名前を正しく入力したかどうかを確認してから、やり直してください。」と鬱陶しい。そのくせちゃんとページは開くんだなあ。

これ、FAQなんですねえ。
http://firefox.geckodev.org/?FAQ#feacd0d0

でもvistaでの解決策はここには書いてありません。
レジストリエディタで以下のキーを削除することで解決。

HKEY_CLASSES_ROOT\HTTP\shell\open\ddeexec
HKEY_CLASSES_ROOT\HTTPS\shell\open\ddeexec
HKEY_CLASSES_ROOT\FirefoxURL\shell\open\ddeexec
HKEY_CLASSES_ROOT\FirefoxHTML\shell\open\ddeexec

乱暴な気がしますが。

参考URL:
http://d.hatena.ne.jp/shiten/20080102/1199250928
posted by sjoe at 16:26| Comment(0) | TrackBack(0) | Vista

2007年02月15日

Windows Vista 外字エディタの仕様が変である件

 Vista の外字エディタは、管理者権限をもっていないと起動しません。といいますか、一般ユーザーで起動すると、管理権限のユーザー名を入力するためのダイアログが出てきて、結局、管理権限のユーザーで実行することになります。
 「すべてのフォントにリンク」された外字はそもそもシステムフォルダに作成されるわけですから、管理者が実行すべきものです。ですから、これはこれで正しい動作です。

 しかし、「指定したフォントにリンク」された外字の場合は、この仕様はちょっとおかしい。この外字は、標準ではユーザーフォルダ、
C:\Users\ユーザー名\AppData\Local\Microsoft\Windows\EUDC に保存されるようになっています。ということは、別のユーザーでログオンすると、その外字ファイルは見えませんし、外字の設定もユーザー毎ですから、その外字は完全にそのユーザー一人だけのものになります。

 つまり、管理権限ユーザーでログオンし、外字エディタで「指定したフォントにリンク」された外字を作成しても、一般ユーザーでログオンするとその外字は使えない。
 それじゃあ、一般ユーザーでも同じ外字を作ってみようかと、外字エディタを起動する。
 すると、管理権限のユーザーを求めてくる。
 だから、管理権限のユーザー名とパスワードを入力して外字エディタを起動する。
 そこで「指定したフォントにリンク」を作成するとどうなるかというと、プログラム自体が管理ユーザーの元で動いていますから、この外字は結局、管理ユーザーのフォルダに作成されます。外字の設定情報も管理ユーザーのレジストリに保存されます。

 これでは永遠に、一般ユーザーは「指定したフォントにリンク」された外字を使うことはできない、ということになります。
 イレギュラー的に外字ファイルを共有フォルダに保存し、手作業でレジストリを書き換えればできますけどね。この仕様は問題ありです。中途半端です。
 結論を言えば、「一般ユーザーでは、外字を駆使できない」ということです。

 そういえば、Vista って外字エディタを起動するメニューってどこにあるんでしょうか。
 今のところ見つけられないので、私は窓旗ボタンの検索で直接、eudcedit って打っちゃってますが、普通はこんな起動方法は使いませんよね。
 メニューにないってのは外字なんか使うなってこと!?
posted by sjoe at 18:03| Comment(9) | TrackBack(0) | Vista