PC関係のメモ
Pentium4 2.4GHzをいただいた
さて、どう使おう。
メインマシンのCPUはCeleronの2.8GHzなので入れ替える必要は無い。サーバー機(Terminator P4 533)のPen4 1.6GHzと載せかえるのが妥当なところ。
けどやっぱりもったいないなー。ちょうどLinuxのデスクトップ環境が欲しかったから一台組んでしまうのもいいかもしれない。そういえばマザーボードもあるし。
CD-ROMはメインマシンに2台DVD+-RWドライブがついてるからこれを一台流用するとして、 あと足りないパーツは、メモリとHDDとケース。
このスペックなら
- テスト環境
- ビデオサーバ
なんかに使えるだろうか。でもビデオサーバとしては大きすぎるし、テスト環境とは両立できない。もう少し検討が必要だ。
ファイル選択ダイアログで落ちる(5) 中間報告 / ファイル選択ダイアログで落ちる(6) / ファイル選択ダイアログで落ちる(7) / GDI+ / MFCでOpenGL
ファイル選択ダイアログで落ちる(5) 中間報告
身の回りのPC4台共で現象が再現した。が、どのマシンも自分が常用しているマシンであるため環境が似通りすぎていてあまり検証にならない。しかもAPI(GetOpenFileName)かMFC(CFileDialog)も関係ないみたい。manifestの有無(comctl32.dllのバージョン)でもないみたいだし、使用したSDKの違いでもなさげ。
再現したPCに共通する項目を挙げてみる
- Windows XP SP2
- Adobe Reader 7.0 を導入している
- 関係ないと思うけど、フォルダオプションはちょっと弄ってる(拡張子を表示するとか縮小版をキャッシュしない、など)
それ以外はほぼインストールしたままの状態の放置マシンから、開発環境やらいろいろ入ってる現役マシンまであるので(ソフトウェア的に)共通する項目が見当たらない。ハードウェア的にはPentium3からPentium4(HT対応)まで世代が散らばってるので(Intel CPUに偏ってるけど)原因とは考えにくい。
メモ帳による再現方法を。
- メモ帳を起動
- メニューの「ファイル」-「開く」でファイル選択ダイアログを開く
- デスクトップ上のアイコンにマウスカーソルを持っていきツールチップを表示させる。このときアイコンはフォルダでは再現しない。また、*.exeでも再現しにくい。とりあえず*.txtとか*.zipとかで再現した。
- キャンセルして一旦ファイル選択ダイアログを閉じる。
- 再度同じ手順でファイル選択ダイアログを開きデスクトップ上のアイコンのツールチップを表示させようとすると落ちる。
同じ環境/違う環境で試された方は、ぜひ「再現した/しない」のツッコミ入れてください。その際、環境(OS/Adobe Readerのバージョン他)も書いてもらえるとより参考になります。
ファイル選択ダイアログで落ちる(6)
デバッグモードで実行すると、常にcall命令が発行されるところで落ちている。で、callする値を見ると確かに不正なアドレスを示しているんだけども、その先まで辿っていくのは自分のスキルを考えるとコスト高すぎ。
callするまえにレジスタを退避してるっぽいとかはなんとなくわかるんだけど、落ちる理由と対策まで探るのはムリポ。
けどこういうときのためにもアセンブリ言語は習得しておきたい。
追記:常にcall命令が発行されてるところというわけでもなさげ。ソースによって位置が違う。「落ちないアプリ」は破壊される領域がたまたま安全な領域というだけなのかも。
ファイル選択ダイアログで落ちる(7)
同じ現象が発生してる方ハケーン!
- http://holybell.to/high/mt/archives/000051.html
- http://polymer3.scphys.kyoto-u.ac.jp/~turutani/cgi-bin/tdiary/?date=20050303#p01
- http://polymer3.scphys.kyoto-u.ac.jp/~turutani/cgi-bin/tdiary/?date=20050326#p04
最後のURLから引用させてもらう。
この件は、Adobe Reader 6.0/7.0でインストールされるpdfshell.dll(通常はC:\Program Files\Adobe\Acrobat 7.0\ActiveX\pdfshell.dll)によるアクセス違反らしい。確かに、そのファイルを一時的に他に移すと、メモ帳が異常終了することはなくなった。
Adobeにも報告されたようなので、対応されることを祈りつつ下記コマンドを発行してpdfshell.dllに消えてもらう。
regsvr32 /u "C:\Program Files\Adobe\Acrobat 7.0\ActiveX\PDFShell.dll"
http://www.geocities.co.jp/SiliconValley-PaloAlto/5936/customize/unwished.html
追記:せっかくアンレジストしたのに次にReaderを起動したときに復元されてしまった・・・。アンインストールするしかないのかな。
それにしてもオンラインアップデートを確認すると「Adobe Acrobat 7.0.1およびReader 7.0.1アップデート」のステータスが「インストールされています」なのに「Adobe Readerについて」でバージョンを確認すると「バージョン 7.0.0」になっているのも少し気になる。


_ a [私も同じ現象が発生しました。 XPSP2,AdobeReader7.0.1でファイル選択ダイアログを開いた時に日本語..]