Visual Studioで作ったインストーラーが「プログラムと機能」に重複して出る時の覚え書き

Visual Studioで作ったインストーラーでソフトをインストールした場合、コントロールパネルの「プログラムと機能」等に前のバージョンも残ってしまって、バージョン違いが複数羅列してしまう場合があります。

昔一度調べて解決してたはずなのに、最近作ったソフトでまた現象が起きてしばらく悩んだので覚え書き。

  • ProductCodeは言われるままに変える
  • UpgradeCodeは放置してOK
  • RemovePreciousVersionsプロパティをTrueにする

3つ目を見落としててハマりました。しかもデフォルトでFalse。どうかんがえてもTrueでいい気がしますが、フェイルセーフなんでしょうねぇ。

もう今のウチに作りかけのツール全部開いてTrueに書き換えとかないとまたハマりそう。

removeprevious

Apple Magic Mouse到着

買って見ました。

右の写真はケースに入った状態。さすがにこのケースからして綺麗なデザインですね。ただ、中でマウスが動かないように底面を粘着テープで固定してあるのですが、それをはがす際にマウス側に糊残りしてしまい、取り出して最初にやってのはセロテープでペトペトやって残った糊を除去することだったという、AppleがこだわるOpen-the-boxのユーザーエクスペリエンスとしては比較的ショボい感じでした…

Windowsでも使えたら、薄いし電源スイッチもあるしモバイル用にいいかなぁーという一縷の望みがあったんですが、やはりダメですね。スクロールが使えませんでした。やはりMac mini用ってことに。

一度Windowsマシンとペアリングをした後にMac miniと再ペアリングしようにもペアリング用のボタンがない。はて?どうすんだ?と思ったんですが、普通にMacから見つかってペアリングできちゃいました。電源投入直後はLEDが点滅してたので、とりあえずペアリング相手がみつからなければ(もしくはみつかるまでは)ペアリングモードに自動的になるのかも知れません。

マウスとしては、Microsoft等のようにエルゴノミクスにこだわったデザインとかでは全然なく、プロダクトデザインとしての美しさを優先した印象ですが、まぁ絶望的に使いにくいといことはないです。逆にBrueTrackみたいな驚異的な追従性でもなく。フツーに使える感じです。

2フィンガースクロールは、二本指で動かす必要はなく、あくまで「この動きはスクロールだよ」という意志を伝えるのに二カ所をタッチしている必要があるだけなので、中指は添えるだけで、動かすのは人差し指だけ、って感じでもOKでした(逆でもOK)。ただしスワイプ操作はその限りではない模様。まぁ、スワイプはいまいちやりづらいし使わないかなぁという印象。Safariが常用ブラウザでないからってのもあるんですが。

まぁ、たまにしか立ち上げないMac miniのマウスとしては、電源スイッチもついてるしいいかなって感じです。

DELL Inspiron 1720でVistaインストールが止まる件の覚え書き

メル友さんのDELL Inspiron 1720でリカバリが上手くいかないと救援要請。メッセンジャー経由でなかなか苦戦しましたが、一応解決をみたので覚え書きしておきます。

■リカバリ領域

DELLのマシンは基本的にHDD内にリカバリ領域をもっていて、F8起動から簡単にリカバリができるはずなんですが、去年の春モデルから、BTO時に指定しないとリカバリ領域が入らないようになったらしく、対象マシンには入っていませんでした。容量単価の高いSSDモデルならまだしも、HDDなら標準でいい気がするんですけどね。これから買う人はHDDモデルなら指定しておくことをオススメします。えらく手間が違います。

以下の情報はobsoleteというか、本来はこちらの手順でやるのが正しいようです。リモート支援だったのでわからなかったw。普通に添付ディスクが揃っている人はリンク先の手順を実行してください。

■DVDからインストール

で、幸いにも対象機に付属していたDVD一式はありました(これ無くしてる人が多い)。が、残念ながらリカバリーディスクではなく、通常のWindows VistaインストールDVDとドライバディスクという構成。つまり、自力でVistaインストールを行った後、ドライバ類を個別にインストールしなければなりません。一応、DELLの公式にいくと、下記の動画が公開されているので、もう一台PCがある状況下なら、これを見ながら作業するとかなり楽です。

Windows Vista を再インストールする手順 (ビデオ)

http://www.dell-faq.com/detail.asp?baID=1&FAQID=198254

Windows Vista にドライバをインストールする手順 (ビデオ)

http://www.dell-faq.com/detail.asp?baID=1&FAQID=198256

実際、予備PCでリモートアシスタンスで画面共有しつつ、「この画面になった?」とかやってたのでσ(^^)が相手の画面が見られない状況にしてはまずまずの効率でした。

■インストールが止まる?!

が、残念なことにインストールの最終段階で止まって進まなくなる現象が発生。具体的に言うと、「インストールの最終処理の実行中…」というところから進まなくなるとのこと。ググるとこのステージでデバイスの認識を行ってるらしく、どうもAHCIモードになったHDDの認識でこけてる様子。正攻法としては、AHCIドライバをフロッピーやUSBメモリに入れておいて、インストールの前段階で読み込ませてやるやり方がありましたが、今回は遠隔サポートだし、USBメモリも手元にないとのことだったので、とりあえず起動時にF2連打でBIOS画面に入ってもらい、SATAモードをAHCIからATAにしてもらいました(同時にFlashCacheModuleをdisableにしないとダメなようです)。これであっさり成功。後半のドライバディスクのインストールに移れたそうです。

VistaならAHCIドライバくらい入ってるかと思ったら、そんなことないんですね。つーか、だったらなおさらリカバリDVDを添付すべきじゃないのか?>DELL

ともあれ、これはハマりがちなので覚え書きしときます。

もしかして、ドライバ類をちゃんと入れた後なら、AHCIに戻しても起動するかな?でもなんか元々不調だった頃に比べれば劇的に速いと感心してるので、このまま使ってもらうのが無難かな?

Windows7 リモートメディアストリーミングを試す

Windows7 + Windows Media Player 12同士でトランスコード付きストリーミングをしてくれるリモートメディアストリーミング[ASCII.jp]を試してみました。

この機能は2台のWindows7マシン同士をWindows Live IDで紐付けておくと、ファイアウォールを越えてメディアファイルの共有ができるというものです。その時のネットワーク帯域にあわせてトランスコードもしてくれます。例えば、ハイビジョン画質の動画であっても、適切な画質に落としてくれる訳です。

録画直後のMPEG2もすぐに外から見られるというのは大きなメリットです。去年の入院中にこれがあったらなぁ、と思います。

実際に、BB mobilepointとイーモバイルの21Mbps端末D31W経由で利用してみましたがそれなりの画質で見られました。正確なピクセル数が見られるところはナサゲでしたが、画面占有面積から推測してSVGAクラスの解像度では来てる感じでした。フレームレートも視聴に問題ないレベル。たまに一瞬止まったりはしますが。

サーバー側でのトランスコーディングの負荷は不明。リモートデスクトップでつないだら、そっちの負荷も合算されちゃうしなぁと思ってちゃんとは調べてません(自宅は限りなくイーモバ圏外なので在宅テストができないorz)。でもAthlon X2 4850e機で現状使えてることは確か。帯域とCPUパワーに応じて画質が決まるみたいですが、CPUがネックになってるなんてことはあるのかなぁ。ならCPU替える価値も出てくる訳ですが。

難点としては、クライアント側のファイル一覧でフォルダ構造が反映されない上に、ミュージックフォルダとして登録したiTunesフォルダの中にあるMP4ファイルまで一緒にビデオ一覧に出てきてしまう辺り。iTunesの音楽は他にも共有する手段があるので、登録から外してしまう方がいいかも。「フォルダ」から入ればちゃんとわかれてくれました。

どうせクライアント環境にあわせてトランスコードしてる訳なので、将来的にはWindows Mobile端末でも再生できるようになってくれると、かなり便利でしょうね。携帯キャリアは悲鳴をあげそうなので、当面はWi-Fi専用ってことになるかもですが(^^;)。

Windows Media Playerが起動した途端クラッシュする時の覚え書き

リビングのVista機も(インプレースアップグレードにて)Windows7にしたんですが、Windows Media Playerを起動すると数秒程度でクラッシュするという現象も引き継がれてしまいました。Vistaの時は別段不自由してなかったので放置してあったんですが、Windows7の目玉であるリモートメディアストリーミングが使えないということで真面目にトラブルシュート。

現象としては、オフラインモードなら落ちないけど、オンラインにすると数秒程度でクラッシュ、という感じです。

結論から書くとDRM(著作権保護機能)関連ファイルが壊れていたようで、フォルダ毎削除することで解決しました(何か著作権保護付きのコンテンツを保存してる人は、再生できなくなるかも知れないので注意)。

ただ、このDRMフォルダが環境によって場所が違ったり、システム保護ファイルで不可視だったり消せなかったりでちょっと苦労しました。

VistaやWindows7ではc:\ProgramData\Microsoft\Windows\DRMか、c:\ProgramData\Microsoft\DRMだったりするようで、システムがどこのDRMフォルダを使っているか正確に調べるには、レジストリエディタでHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DRMを調べるのが早いみたいです。

で、見つけた後もフォルダがシステム保護&不可視で、Explorerでは見えません(通常の隠しフォルダ表示設定でもダメ)。結局、管理者権限で起動したコマンドプロンプトを使い、強制オプション付きのdeleteコマンドで削除しました。

Windows Media PlayerでDRM使うようなコンテンツなんて全く使ってないのに、なんでこんなに苦労させられなあかんねん!という気分です。