NVIDIAのOptimusとPlayOnline Viewer

ThinkPad X60の熱問題に耐えられなくなり、ThinkPad T420を購入しました。届いたのでFF11をインストールしたのですが、PlayOnline Viewerが起動しない(原因不明のエラーにより「動作を停止しました」状態になる)という不具合に遭いました。まだ根本的には解決していないのですが、対症療法的なものを見つけたので、ここにメモしておきます。

こちらの記事によれば、PlayOnline Viewerが起動しないのはNVIDIAのOptimusに問題があるとのことです(ThinkPad T420固有の問題というわけではないらしい)。何が原因なのかわかりませんが、PlayOnline Viewerを起動するとNVIDIAのドライバ(nvumdshim.dll)でエラーが生じて、そのままハングアップしてしまうようです。このハングアップが厄介で、これまた理由は分からないのですが、シェルを巻き添えにしてしまいます。タスクマネージャすら応答しなくなりプロセスの終了もさせられなくなるので、Ctrl+Alt+Deleteでログオフを選ぶしかありません。

対症療法的な対策として、C:\Windows\SysWOW64\nvumdshim.dllを一時的にリネームするなどして除いておくというものがあります。前記DLLが存在しない状態ならばPlayOnline Viewerを起動することができるようになります(これまたこれまた理由が分かりません)。ただし、そのままではFF11が起動しなくなるので、PlayOnline Viewerが起動した後は元の状態に戻しておかなければなりません。

また、nvumdshim.dllを置き換えるという手段があります。古いドライバのDLLに置き換えることで、不具合を避けることができるとのことです。置き換えると、確かに、PlayOnline Viewerがエラーで停止することはなくなります。ただし、他に影響が生じない保証はありませんし、リンク先のファイル自体が安全である保証もありません(いちおうAvira Antivirusでスキャンしましたが何も検出されませんでした)。くれぐれも自己責任で試してみてください。また、既存のファイルはリネームするなどして保存しておくようにしましょう。何らかの問題が生じても、ファイルを元に戻せば復旧できるものと思われます。こちらの手段をとる場合、次のようなスクリプトを使う必要はありません。

ファイルを置き換えた場合、他のDirectX使用アプリケーションが正常に動作しなくなるおそれがあります。実際、Google EarthのDirectXモードは起動しませんでした(OpenGLモードならば起動できます)。

Continue reading