HOME > BVE関連 > 小ネタ:エラーとその意味の一覧

小ネタ:エラーとその意味の一覧

「Cannot create Direct 3D Device.」や「Cannot load.」など、いまいちよく分からないBVEのエラーについてその意味と対処法を解説します。
非プログラマーの読者様向けに、厳密さよりも分かりやすさを重視して意訳しています

INDEX

起動時のエラー

ATSプラグイン読込時のエラー

起動時のエラー

Cannot create Direct3D device.

Direct3D(DirectXに含まれるサービスの1つ)を正しく読み込めませんでした。

DirectXを読み込めていません。DirectX エンドユーザーランタイムはインストールしましたか?

BVEは「DirectX9」という古いバージョンのDirectX上で動作します。 DirectXがインストールされているPCでこのエラーが発生する場合は、BVEが対応している古いバージョンのDirectXがインストールされていない可能性が高いですMicrosoftのホームページからインストールしてください。

Cannot create DirectSound device.

DirectSound(DirectXに含まれるサービスの1つ)を正しく読み込めませんでした。

詳細は「Cannot create DirectSound device.」へ

ATSプラグイン読込時のエラー

Cannot load.

様々な原因のエラーでこのメッセージが表示されるため、原因を1つに特定できません。

よくある理由としては次のようなものがあります。

64bit版、32bit版を取り違えている

BVE5でBVE6向けのATSプラグインを読み込んでいたり、逆にBVE5でBVE6向けのATSプラグインを読み込んでいたりするとこのエラーが発生します。
具体的には、車両(Vehicle)ファイルにて「Ats64」にBVE5向けの32bitプラグインを設定してしまったときなどに発生します。

ATSプラグイン内で参照している他のdllの読み込みに失敗している

ATSプラグインでよくある、というよりかは、BVEのATSプラグインを読み込む処理と同じようなコードを書いているときにやりがちなミスです。
ATSプラグイン本体の他に別途必要なdllがある場合は確認してください。

Cannot load XX-bit ATS plugin. The current process of BVE Trainsim is XX-bit.

現在使用しているバージョンのBVE向けのATSプラグインが設定されていません。

具体的には、車両(Vehicle)ファイルに「Ats32」のみ設定した車両をBVE6で読み込んだり、逆に「Ats64」のみ設定した車両をBVE5で読み込んだときに発生します。
なお、「Ats64」にBVE5向けの32bit ATSプラグインを設定してしまったときにもこのエラーが発生しそうなものですが、 その場合は「Cannot load.」が発生します。

Cannot check version.

ATSプラグインに必要な機能が実装されていません。

ユーザー / 車両・マップ開発者向け解説

ATSプラグインの不具合である可能性が非常に高いです。残念ながらこちらでできる対処法はありません。
開発者に問い合わせれば修正してもらえるかもしれません。

プラグイン開発者向け解説

GetPluginVersion関数が定義されていません。この関数はATSプラグインとして使用するために必要です。
ドキュメントやサンプルコードなどを参考に、GetPluginVersion関数を定義してください。

File version not supported.

ATSプラグインのバージョンが古いか、ATSプラグインに不具合があります。

ユーザー / 車両・マップ開発者向け解説

今が2020年代なのであれば、ATSプラグインの不具合である可能性が非常に高いです。残念ながらこちらでできる対処法はありません。
開発者に問い合わせれば修正してもらえるかもしれません。

今が2030年代以降であれば、ATSプラグインのバージョンが古い可能性も考えられます。この場合も、残念ながらこちらでできる対処法はありません。

プラグイン開発者向け解説

GetPluginVersion関数が返す値が不正です。 この関数は常にATS_VERSIONで定義された定数(0x00020000、int型)を返す必要があります。
ドキュメントやサンプルコードなどを参考に、GetPluginVersion関数を修正してください。