| |
| [ 症状 ] |
| ExHIBIT.exeが起動時に異常終了します。 |
| |
| [ 原因 ] |
| |
| 1. |
汎用のExHIBIT.exeの新しいバージョンを上書きした際に起こることがあります。 |
| |
これは、ExHIBIT.exeのバージョンアップに伴って、*.system.datの構造が変わったことに由来します。
メーカーが提供するバージョンアップは、一般にこの点が考慮されていますが、汎用の実行ファイルでは考慮のしようがないため、このようなことが発生します。
|
| |
|
| 2. |
windowsVISTAで、次の1と3、または2と3の条件がそろった場合に発生します。 |
| |
1.ExHIBIT ver.1.30以前を利用している。 |
| |
2.acmp.exe ver.1.00 rev.1以前を利用している。 |
| |
3.インストールしたフォルダに、セキュリティディスクリプタが全く存在していない。 |
| |
|
| |
ExHIBITはVISTAのUACに対応するため、OSがVISTAの場合、起動時にuserdataフォルダのセキュリティ・ディスクリプタを調査します。この調査時に、セキュリティ・ディスクリプタがまったく設定されていないフォルダにインストールされていると、情報の取得に成功しても、その値自体がNULLになっていることがあります。
このポインタをそのまま、windowsAPIの::GetAclInformation()の第1引数に与えると、アクセスバイオレーションを発生させて落ちます。
acmp.exeについても同様です。 |
|
| |
| [ 対策 ] 原因1の場合 |
| バージョンアップを行わないか、*.system.datを削除します。*.system.datがない場合、ExHIBIT.exeは起動時に初期化された、*.system.datを作成します。 |
*.system.datには、ゲーム全体を通して参照されるデータが記録されています。ユーザーに関係あるデータの内重要なものは――
1.CGやメッセージの既見/既読管理のフラグ
2.ゲームのクリアフラグ
3.コンフィグの設定
等があります。このファイルを削除すると、これらの情報が初期化されますのでご注意下さい。
削除する際は、バックアップを取っておいた方がよいでしょう。
|
| |
| [ 対策 ] 原因2の場合 |
| ExHIBIT ver.1.31 以降、acmp ver.1.01 以降をご利用下さい。 |
またバージョンアップが難しい場合は、セキュリティ・ディスクリプタをもったドライブにインストールして下さい。UACの有効無効は無関係です。
通常、NTFSフォーマットされているドライブには存在します。確認方法はインストールしたいフォルダのプロパティを開いて、
フォルダのプロパティに「セキュリティ」タブが存在していれば大丈夫です。「セキュリティ」タブがない場合、そのフォルダにはセキュリティ・ディスクリプタそのものが存在しないため、上記2番の問題が発生します。
|
| |
| [ 参考 ] |
| ExHIBIT起動時に、リソースマネージャの利用するシステムレジスタが少なすぎると言われる |