*よくあるエラーメッセージとその対策 [#l7c30311]
 
 &color(red){注意:このページは再現困難な事項を含むため、不正確または不必要な記述や抜け落ちがあるかもしれません。(Wiki はすべて大なり小なりそうですが)とりわけこのトピックは加筆・編集をお願いします};――書き始め人記す。
 
 #contents
 
 **一般的なガイド[#Guide]
  SRCエラーメッセージのうち、「セーブ中にエラーが発生しました」と「ロード中にエラーが発生しました」以外の項目はもっぱら自作シナリオ・自作データ向けです。これらのエラーで他の人のシナリオの場合は、[[シナリオバグ報告掲示板>http://www.src.jpn.org/neko/lightbbs/scenariobug/src_custom.cgi]]またはシナリオ同梱のreadme.txtなどに指定された方法でご報告をお願いします。
  その他の項目は、自作・他作両方を想定しています。
 
  このページは Wiki の他のページやヘルプとの重複を避けているため、以下も同時に参照してください。
  各種データファイルの正しい名前と置き場所については、ヘルプの&color(purple){「データの作成」->「データ形式」};のページ
  シナリオ関係ファイル・フォルダの正しい名前と置き場所については、ヘルプの&color(purple){「シナリオの作成」->「シナリオの構成」};のページ
  自作データ関係のミスについては[[Q507>その他よくある質問#u7a2e774]]
  Createコマンドのミスについては[[Q407>シナリオ作成基礎編#xc79d5a1]]
  エラーの発生箇所の特定方法は[[Q510>その他よくある質問#Q510]]
  インストール直後のエラーについては[[導入直後のエラー>導入直後のエラー#e3d1b28a]]およびヘルプの&color(purple){「インストールとアンインストール」->「インストール時のエラーへの対処」};
  ファイルの再インストールについては、[[ダウンロード関連>ダウンロード関連]]
 
 **ユニット・パイロットなどデータ関係のSRCエラーメッセージ[#DataErr]
 ''&color(darkred){★ 「〜」のデータが見つかりません};''
 ''&color(darkred){★ ユニットデータ「〜」が見つかりません};''
 ''&color(darkred){★ 「〜」というパイロット[ユニット、パイロットまたはユニット]が見つかりません};''
 ''&color(darkred){★ 指定したユニット[パイロット]「〜」のデータが見つかりません};''
 ''&color(darkred){★ データ「〜」のフォルダが見つかりません};''
   (SRC エラーメッセージ)
 
  このエラーは、症状によって原因が違います。
 
  &color(blue){シナリオフォルダ内にあるどのデータも見つからないとき};には、以下をチェックしてください。
 - Data フォルダが"Date" ・ "Deta" ・ 全角で "Data" などになってはいないか
 - Data フォルダの場所は正しいか
 
 #hr
 
  &color(blue){特定の作品別フォルダにあるデータが見つからないとき};は、次の場合が多いです。
 - Data フォルダ内の作品別フォルダの名前と作品データ読み込み指定「@」以降の記述とが一致してない、または、読み込み指定が書かれていない
  ――フォルダ名と読み込み指定は厳密に一致していなければなりません。誤字や表記のわずかな違い、全角半角の違いなどは、すべて別の名前指定とみなされます。
 - 「@」が全角になっている、または、「@」がない
 - pilot.txt、unit.txt、robot.txt などのファイル名がまちがっている。
 
 #hr
 
  &color(blue){特定のユニットまたはパイロットのみにエラーが出るとき};は、以下をチェックしてください。
 - 該当データはたしかに作られているか
 - pilot.txt、unit.txt、robot.txt などでのパイロットやユニットの名称データとイベントファイルの記述が一致しているか
 - データ記述にまちがいはないか
 - まだ作成されていないパイロット ・ ユニットを Launch させようとしていないか。
 - FreeMemoryコマンドによりデータが抹消されたパイロット ・ ユニットを Launch させようとしていないか。
 - ユニット名またはパイロット名と同名の変数やサブルーチンを作成してはいないか
  ――この場合、エラーメッセージの“「 」”の中が、意図通りのユニット名などになっていないはずです。
 - 「見つからない」のがパイロットのときは、ユニットデータの「パイロット数」を越えて搭乗させなかったか。(このとき、元から搭乗していたパイロットは強制的に降ろされます)
 
 #hr
 
  &color(blue){特定のイベントコマンドのみでエラーが出るとき};は、以下をチェックしてください。
 - pilot.txt、unit.txt、robot.txt などに記録された名称データとイベントコマンドの記述が一致しているか
 - Create コマンドなど、ユニット名称で指定すべきコマンドパラメータを愛称で指定していないか
 - パイロット名称・愛称にすべきコマンドパラメータにユニット名称・愛称やユニットIDを入れていないか。またはその逆。
 
 #hr
 
  &color(blue){自作スペシャルパワーでエラーが出る場合};は、「アニメ」の指定ミスが多いようです。たとえば、「対象」が陣営全体なのに個別対象のアニメを指定しているなど。
 
 #hr
 
  メッセージ''「データ「〜」のフォルダが見つかりません」''は、作品別データではなく、イベントファイル読み込み時に出る場合もあります。 この場合は、Continue や Require などそのファイルを呼び出したコマンドでのファイル指定と実際のファイルの置き場所が一致してるかを調べてください。
 
 
 ''&color(darkred){★ 「〜」というパイロットが定義されていません};''(SRC エラーメッセージ)
 
  Talk、AutoTalk コマンドでパイロットに話をさせるときに出るエラーです。
  チェック事項は前項とほとんど同じです。また、非戦闘員またはステージ中にまだ登場させてないパイロットの場合は non_pilot.txt が参照されますので、その記述やファイル名が正しく「non_pilot.txt」になってるかなどをチェックしてください。
 
 ''&color(darkred){★ 〜は出撃していません};''(SRC エラーメッセージ)
 
  アビリティ使用時や移動時に出るエラーです。
  このエラーになるのは、(ザコ)または(汎用)パイロットに対する Move コマンドなどをメインパイロット名で指定したたため、正しく特定できないときが多いようです。ユニットIDまたはそのユニットに固有なグループIDをお使いください。
 
 ''&color(darkred){★ 「〜」はユニットに乗っていません};''(SRC エラーメッセージ)
 
  これはおもに以下の場合に起こります。
 - Pilot コマンドなどで作成されたパイロットが Ride コマンドでユニットに搭乗させられていない。
 - ユニットに定員過剰のパイロットを乗せたため、元から搭乗してた Pilot が降ろされてしまっている。
 - 特殊能力「追加パイロット」で搭乗パイロットを指定したが、その記述がまちがっている――「(ザコ)」の括弧が全角、など。
 
 ''&color(darkred){★ ユニット「〜」にパイロットが乗っていません};''
 ''&color(darkred){★ 指定されたユニットにパイロットが乗っていません};''
   (SRC エラーメッセージ)
 
  一つ目のエラーメッセージは、ユニットからメインパイロットを参照しようとしたところ、パイロットが存在しなかったときに表示されます(イベントコマンドで参照する記述をした場合だけではなく、SRC本体によって自動的に参照された場合も含みます)。
  二つ目の「指定された〜」というメッセージは、RemovePilot コマンドでパイロットが存在しなかったときに出されます。
 
  これらのエラーのおもな原因は、次のものです。
 - ユニットをパイロット非搭乗の状態で出撃させた後、パイロットを乗せていない。
 - パイロットを他のユニットに乗せ換えてしまった。
 - 該当ユニットは召還アビリティで呼び出されたものだが、特殊能力「召還ユニット」を持っていない。
 
 ''&color(darkred){★ 〜というパイロットは既に登録されています};''(SRC エラーメッセージ)
 
  このエラーのおもな原因と対策は以下の通りです。
 - ステージ中に同じパイロットを2回、出撃させようとした。
  → 2回目には CreateやPilot コマンドではなく、Launchコマンドをお使いください。
 - 以前のステージで作成した味方パイロットを再度作成しようとした。
  → 味方パイロット・ユニットは削除されない限り、以後のステージにも登録されたままです。前項と同様、Launchコマンドをお使いください。
 - パイロット名称に「(ザコ)」も「(汎用)」も付いていないパイロットを複数出撃させたとき。
  → パイロットの名称指定に「(ザコ)」か「(汎用)」を付けてください。
 - パイロットが出撃するイベント(たいていのケースではスタートイベント)の直前のイベント(たいていはプロローグイベント)末尾に「Exit」がないため、出撃コマンドが複数回実行されてしまった。
 
 ''&color(darkred){★ 〜はすでに出撃しています};''(SRC エラーメッセージ)
 
  Launch コマンドで出るエラーです。このエラーは、次の場合に出ます。
  出撃中のパイロット・ユニットをLaunchさせたとき。
  メインパイロット名称に「(ザコ)」も「(汎用)」も付いてなく、グループIDも設定されていないユニットを複数出撃させたとき → パイロットの名称指定に「(ザコ)」か「(汎用)」を付けてください。
  また、パイロットが出撃するイベントの直前のイベント末尾に「Exit」がないため、出撃コマンドが複数回実行されてしまうミスもあります。
 
 ''&color(darkred){★ 〜のデータが不正です};''(SRC エラーメッセージ)
 
  データ読み込み時のエラーです。[[Q507>その他よくある質問#u7a2e774]]を参照してください。
 
 ''&color(darkred){★ 〜は強制的に退却させられた。};''(SRCメッセージ)
 
  このメッセージは必ずしもトラブルではなく、
 ・ ユニットが活動限界時間切れになったとき
 ・ 付加された移動能力が切れたとき、進入禁止の座標にいた場合
 ・ ユニットが変形させられたが、変形先の形態で進入禁止の座標にいた場合
 などでも表示されます。
 
  このメッセージが作者の意図しないトラブルを表すのは、たいてい、ユニット出撃時です。出撃時には、ユニットデータの「移動可能地形」がマップ左上隅(1,1)の地形クラスに適合するかどうかをチェックされますが、これに引っかかるケースです。
  &aname(SpaceTerrain);特によくあるのは、移動可能地形「宇宙」への誤解です。これは、「宇宙で&color(red){のみ};移動が可能」を示すものです。「宇宙で移動が可能」ではありません。したがってこの移動可能地形が設定されたユニットを地上マップで出撃させようとしたら(たとえ同時に「陸」などが設定されていても)強制退却となります。
  移動可能地形で、「陸」を「地」とまちがえるケースもあります。
 
 &aname(starteve);''&color(darkred){★ スタートイベントが定義されていません};''(SRC エラーメッセージ)
 
  スタートイベントが書かれてないか、イベントラベルが正しく読み込めれなかったときに出るメッセージです。
  このエラーは、プロローグイベントが終了した直後、プロローグ以外のイベントが解析される前にチェックされます。なので、プロローグイベント以外のイベントコマンドはこのエラーとは無関係です。
 
  よくあるミスは、以下の二つです。
 
 ''(1) スタートイベントラベルの書式ミス''
 ・ 「スタート:」の「スタート」は全角、「:」は半角です。
 ・ まれに、「ー」(長音)を「−」(マイナス)、「―」(ダッシュ)、「一」(漢数字)、「‐」(ハイフン)などとまちがえるケースもあります。
 
 &aname(steve2);''(2) 改行コードの形式か文字コードが SRC に適合していない''
  SRC が正常に読み込める文字コードセットは、shift_JIS と呼ばれるものです。 EUC、Unicode など他の文字コードセットのテキストは文字化けします。
  また SRC では、改行コードは 「CR + LF」(Windows での標準)でなければなりません。改行コードは、UNIX系では「LF」、Mac では「CR」が使われており、イベントラベルの直前の改行コードがこれらの場合、ラベルが正常に読み込まれません。
 
  たいていのテキストエディタでは、「名前を付けて保存」ダイアログの「ファイル名」「ファイルの種類」の下に「文字コードセット」「改行コード」の欄があります。これらの欄をそれぞれ「SJIS(または SHIFT-JIS など)」・「CR+LF」に指定してからファイルを再保存してください。ただし、Windows 付属の『メモ帳』はこの機能が不完全なので、他のエディタで直してください。
 
 &aname(label_kakko);''&color(darkred){★ ラベルの引数の括弧の対応が取れていません};''(SRC エラーメッセージ)
 
  このエラーは、&color(blue){文字通りラベル引数の式でカッコの対応が取れていない};(片方を全角にしてしまうなど)場合のほか、
 &color(blue){イベントファイルを「JISコードセット」で保存してしまった場合};に出ます。この場合は、[[「★ スタートイベントが定義されていません」の (2) >#steve2]]を参照してください。
 
  カッコの対応ミスの防ぎかたは、[[Q516.の該当箇所>その他よくある質問#kakko]]を参照してください。
 
 **サブルーチン関係のSRCエラーメッセージ[#SubErr]
 ''&color(darkred){★ サブルーチン「〜」が見つかりません};''(SRCエラーメッセージ)
 
  このエラーは、戦闘アニメ再生用サブルーチンが見つからなかったときに表示されます。
  エラーメッセージ冒頭に「指定された」との語句がある場合は、次項を参照してください。
 
  このエラーに対しては、アニメ呼び出しの書式が正しいかチェックしてください。
  見つからなかったサブルーチンが自作なら、ファイル名か置き場所、またはサブルーチン名がまちがっている可能性もあります。
  エラーを起こした戦闘アニメが汎用戦闘アニメの場合は、[[次項(4)>#han-you]]を参照してください。
 
 ''&color(darkred){★ 指定されたサブルーチン「〜」が見つかりません};''
 ''&color(darkred){★ サブルーチンの呼び出し先ラベルである「〜」がみつかりません};''
 ''&color(darkred){★ ラベル「〜」がみつかりません};''
   (SRC エラーメッセージ)
 
  ラベルの呼び出し時に起こるエラーです。
  最初の二つのメッセージはサブルーチンコール、「ラベル〜」は Goto コマンドでの呼び出し時に起こります。
  これらのエラーが起こるおもな原因は、以下の通りです。
 
 (1) コマンド名や変数名を書いたつもりがスペルミスなどがあり、サブルーチン名と解釈されてしまった。
 
 (2) サブルーチンラベルの書式がまちがっている。
 
 (3) サブルーチンがインクルードファイルにある場合、
  (3.1) そのファイル名がまちがっている。
  (3.2) インクルード読み込みの指定「< >」がまちがっていたり、書き忘れている。
  (3.3) インクルードファイルの置き場所と読み込み指定があっていない。
 
 (4) &aname(han-you);サブルーチン名が「AttackDemo」「PlayEffect」なら汎用データの戦闘アニメ関係サブルーチンです。「戦闘アニメ_〜」の場合もその可能性が高く、「SpecialPowerAnime」や「SPアニメ_〜」などならおそらく汎用データのグラフィック集のサブルーチンです。これらの場合は、上記(3)のほか、汎用データのバージョンが古い、または汎用データフォルダの置き場所がまちがっている可能性があります。最新のものを、ヘルプの「インストールとアンインストール」->「SRCのインストール」に書かれている通りに、インストールしてみてください。
  また、これらのサブルーチンは、自作イベントの Exit, Return 抜けや自作データのミスなど、思わぬ場所のミスの影響を受けることもあります。
  これらをチェックしてもなおエラーが出、汎用データのバグの可能性が高い場合には[[汎用データコーナー>http://www.src.jpn.org/neko/lightbbs/general/src_custom.cgi]]にてご報告をお願いします。
 
  エラーメッセージ冒頭の、「指定された」の語句がない場合は前項を参照してください。
 
 ''&color(darkred){★ サブルーチンの引数の総数が〜個を超えています};''
 ''&color(darkred){★ 〜階層を越えるサブルーチンの呼び出しは出来ません};''
 ''&color(darkred){★ サブルーチンの呼び出し階層が〜を超えているため、イベントの処理が出来ません};''
 ''&color(darkred){★ 作成したサブルーチンローカル変数の総数が〜個を超えています};''
   (SRC エラーメッセージ)
 
  たいていの場合、Call で呼びだされたサブルーチンから Goto で外に出たことによります。Callサブルーチンは Return しないと終了しません。終了しないとそのサブルーチンで使う引数やローカル変数、サブルーチンの呼び出し元情報などをメモリから解放できません。そのうち、SRC が用意したメモリ領域が足らなくなり、エラーメッセージが出ます。&color(red){Callサブルーチンは必ず、Return で終了するようにしてください};。
 
  このほか、
 (1) ローカル変数などの作りすぎ
 (2) 再帰サブルーチン(自分自身を呼び出すサブルーチン)で再帰回数が多すぎた
 (3) 複数のサブルーチンがお互いを呼び出しあって無限ループになった
 などの理由でエラーになることもあります。
 
  意図せずに無限ループを作ってしまうこともあります。
 (1) イベントの最後の「Exit」、サブルーチンの最後の「Return」が抜け落ちてないか
 (2) エピローグイベント内で Continueコマンドを使っていないか
 などをチェックしてください。
 
  バージョン2.2.15 では、それぞれの最大値は以下の通りです。
 呼び出し階層数・・・・・・・・・・・・・・  50
 //HELPに記載
 引数の数・・・・・・・・・・・・・・・・・・・ 200
 //不記載?
 サブルーチンローカル変数の数・・2000
 //HELPに記載
 
 **ファイル関係のSRCエラーメッセージ[#FileErr]
 ''&color(darkred){★ セーブ中にエラーが発生しました};''(SRCエラーメッセージ)
 
  このエラーのおもな原因と対策は、以下の通りです。
 - 該当するセーブファイルを他のソフトで開いている。
  → 他のソフトでファイルを閉じる。
 - セーブファイルかそのファイルを含むフォルダが読み取り専用になっている。
  → ウィンドウズエクスプローラーなどから該当ファイルまたはフォルダのプロパティを開き、読み取り属性を解除する。
 - SRC のフォルダがCD-ROM など書き込み不能の記憶装置に配置されている。
 - ファイルへのアクセス権がない(Windows NT または XP以降のみ)。
  → アクセス権を取得する。
 - 記憶装置の容量が足りない。
 
 ''&color(darkred){★ ロード中にエラーが発生しました};''(SRCエラーメッセージ)
 
  考えられる原因と対策は以下の通りです。
 - マシンのメモリ不足
  → 同時に他のソフトを実行していれば閉じてください。Windowsスタートメニューの「スタートアップ」などを調べ不要な常駐ソフトがあれば常駐をはずしてください。
 - クイックセーブの後、イベントラベルの変更・イベントの新設・削除を行うとほぼ必ずこのエラーが出ます(オプション「デバッグ」無効時)。Pilot.txt・Unit.txt の改変でもこのエラーが出ることがあります。
  したがって、作品が更新されたとき、クイックセーブデータの有効性はたいてい保証されません。
  → ステージの最初からやり直してください。
 - クイックセーブの後、セーブデータが壊れた。または、セーブデータの改変の結果、読み込めないデータになった。
  ――過去(SRC Ver.2.0.30など)、_クイックセーブ.srcに不要な文字列「""""」が書き込まれ、これを削除したら直ったという報告もありました。
 - 一つのイベントファイルで32766行を越えるとき、このエラーが出ることもあります。
 
 ''&color(darkred){★ データ「〜」のフォルダが見つかりません};''
 ''&color(darkred){★ 〜が開けません。};''
   (SRC エラーメッセージ)
 
  以下がよくある原因です。
 (1) Data フォルダ名のミス。"Date"、"Deta"、全角で "Data" などになってしまっている。この場合、どの作品のデータも同様なエラーが出るはずです。
 (2) Data フォルダ内の作品別フォルダの名前と、.eveファイル内の作品データ読み込み指定「@〜」とが一致していない。または、作品別フォルダが存在していない。
 (3) 一つのイベントファイルで32766行を越えるとき、このエラーが出ることもあります。
 (4) パイロットまたはユニットの「名称」データに全角「”」を用いると、クイックロード時に「〜が開けません」のエラーが出ます。
 
 ''&color(darkred){★ スタートイベントが定義されていません};''(SRC エラーメッセージ)
  →「ユニット・パイロットなどデータ関係のSRCエラーメッセージ」の[[該当する項>#starteve]]
 
 ''&color(darkred){★ ラベルの引数の括弧の対応が取れていません};''(SRC エラーメッセージ)
  →「ユニット・パイロットなどデータ関係のSRCエラーメッセージ」の[[該当する項>#label_kakko]]
 
 **その他のSRCエラーメッセージ[#EtcErr]
 
 ''&color(darkred){★ Ifに対応するEndIfがありません};''
 ''&color(darkred){★ If[ElseIf]に対応する Then または Exit または Goto がありません};''
 ''&color(darkred){★ Else[ElseIf, EndIf]に対応するIfがありません};''
 ''&color(darkred){★ Loopに対応するDoがありません};''
 ''&color(darkred){★ Doに対応するLoopがありません};''
 ''&color(darkred){★ For[ForEach]に対応するNextがありません};''
 ''&color(darkred){★ Nextに対応するコマンドがありません};''
 ''&color(darkred){★ Switchに対応するEndSwがありません};''
 ''&color(darkred){★ Case[EndSw]に対応するSwitchがありません};''
   (SRC エラーメッセージ)
 
  IfやForなどを入れ子にした場合、EndIfやNextはもっとも内側のIfやForのみを終了させます。すべてのIfやForをいっぺんに終了させるわけではありません。
  # 以下は、EndIf が足らず、エラーが出ます。
  If (条件式1) Then
    If (条件式2) Then
      (処理内容)
  EndIf
  「ありません」と言われた当のコマンドを書き忘れた場合はミスを見つけやすいのですが、比較的見つけにくい場合もあります。特に多いのは、「ありません」と言われたところの直前に別の制御構造があり、そこにミスがあるケースです。たとえば以下の例では、「Caseに対応するSwitchがありません」と3回も言われますが、ミスは「Swith〜EndSw」構文自体にはなく、「If〜EndIf」構文の EndIf がないことです。
  Switch 選択
  Case 1
    If 条件 Then
      (分岐1−1)
    Else
      (分岐1−2)
  Case 2
    If 条件 Then
      (分岐2−1)
    Else
      (分岐2−2)
  Case 3
    If 条件 Then
      (分岐3−1)
    Else
      (分岐3−2)
  Case 4
    (けーす4中味)
  EndSw
  これらのミスをふせぐ有力な手段は、「If〜EndIf」や「For〜Next」のあいだの部分を字下げすることです。と言うよりむしろ、字下げのないプログラムは少し複雑になっただけでもバグ発生必死になるとさえ言えます。
 
  このエラーは、一部の改行コードが Windows標準のものでないために出ることもあります。詳しくは[[こちらを参照>#steve2]]してください。
 
 ''&color(darkred){★ イベントデータが不正です};''(SRCメッセージ)
 
  さまざまな文法ミスやデータの書式ミスなどがありえます。ヘルプを参照し厳密なチェックを行ってください。原因はメッセージで指定されたエラー発生箇所にあるとは限らず、それより前のイベントデータやデータかもしれません。また、他のエラー(とりわけ、「〜というパイロットは既に登録されています」)に付随して表示されることも多く、その場合は他のエラーをまず解決してください。
 
  ありえるミスは多様ですが、過去、以下のミスが報告されています。ただし、以下のミスがあったら必ずこのエラーメッセージが出るとは限らず、最新バージョンで同じメッセージが出るとも限りません。
 - パラメータの区切りの半角スペースが全角になっている
 - イベントコマンドのパラメータ数が足りない
 - 値を変更可能なシステム変数に対し、許容範囲外の値を入れた(Ver.2.2.27で確認)
 - 存在しないフォルダのファイルをOpenしようとした(Ver.2.2.25で安定して再現)
 - すでに存在するファイルを出力モードでOpenしようとした(Ver.2.2.25で安定して再現)。なお、このエラーが出た後、マシン再起動までこのファイルを削除できなくなるかもしれません。
 - 他のソフトが使用中のファイルをOpenしようとした。
 - ユニット用特殊能力「変形」の変形先がまちがっている
 - Question コマンドの不具合。 [[こちらを参照>ヘルプ補足/選択肢入力コマンド#Ask_Question]]。
 - 演奏中の Midiファイルに上書き、またはファイルを削除しようとした
 - サポートパイロットとしても使えるパイロットに対し、ユニットに乗せたままReplacePilotコマンドを使った(Ver.2.2.25でのテストではエラーにならない)
 - ForEach中にForEachを使っている(Ver.2.2.25でのテストでは最も内側のForEachだけが繰り返され、エラーメッセージは出ない)
 - VBの「長整数型」データの最大値(2147483647)を越える数で除算を行った(Ver.2.2.25でのテストではエラーにならない)
 - 一つのイベントファイルで32766行を越えるとき、このエラーが出ることもあります。この場合は、「ロード中にエラーが発生しました。イベントデータが不正です」というエラーになります。(Ver.2.2.25で安定して再現)
 - サブルーチンの直前のイベントの Exit抜け、GoTo によるサブルーチン呼び出しなど、Args()を使うサブルーチンを不正規な方法で呼び出した。
 
 
 **VBエラーメッセージ[#VBErr]
 ''&color(darkred){★ 実行時エラー'52' :ファイル名または番号が不正です。};''(VBエラーメッセージ)
 
  原因が特定しにくく、やっかいなエラーです。以下はそれで解決されるかもしれない対策です。
 (1) ドライブのボリューム名を変えてみる。
 (2) SRC.inf をいったん削除する。
 (3) (2)の後、VBランタイムを再インストールする。
 (4) (WindowsXP以降 または NT のみ)SRC 関連フォルダにアクセス権があるかチェックする。なければ取得する。
 (5) 汎用データを削除してから再インストールする。
 (6) SRC と関連ファイルすべてを再インストールし、マシン再起動後、実行してみる。
 
 ''&color(darkred){★ 実行時エラー'5' :プロシージャーの呼び出し、または引数が不正です。};''
 ''&color(darkred){★ Run-time error '5'  Invalid procedure call or argument};''
   (VB エラーメッセージ)
 
  このエラーは、[[(1)>#Error5-1]]特定のシナリオのみでエラーが出る場合と、[[(2)>#Error5-2]]多くのシナリオで出るがシナリオごとに発生タイミングが違う場合、[[(3)>#Error5-3]]どのシナリオでもシナリオ読み込み時にエラーになる場合で、対処法は違います。
 
  &aname(Error5-1);(1)の場合は、シナリオ固有の記述ミスの可能性が高いです。ご自分で書かれたシナリオなら厳重にチェックし、他の人のシナリオなら作者に連絡することをおすすめします。よくあるミスには、次のものがあります。
 ・ イベントコマンドのパラメータ数が少なすぎる
 ・ PaintPicture などのグラフィック関係コマンドで、有効範囲外の座標パラメータを設定した
 ・ コマンドや変数のスペルミスがあるため、サブルーチンとみなされてしまった
 ・ Pilot.txt、Unit.txt などの記述形式に誤りがある
 ・ Call や Goto で存在しないラベルを呼び出した――これは、Call・Goto での指定かラベルそのものの記述のどちらかに誤字がある、あるいは、呼び出されるサブルーチンを含むインクルードファイルが読み込まれていない、などにより発生します。
  該当しえるミスの種類はこのように幅広いのですが、どの時点でエラーが発生するかを特定することで、原因を絞り込むことができます。たとえば、ユニット上にカーソルを置いたときにエラーになったのなら Pilot.txt、Unit.txt あたりが怪しい、というように。
 
  &aname(Error5-2);(2)なら、汎用戦闘アニメ・特殊効果データ関係が怪しいです。この場合は、戦闘アニメをオフにしたり、.eve ファイル内のエラー発生箇所周辺の特殊効果呼び出し行行頭に'#'をつけ無効化したりするとエラーにならなくなるので原因が特定できます。この場合、おもなチェック事項は以下の通りです。
 ・ 汎用データを更新せずに古いままではないか?
 ・ (あなた自身によるシナリオの場合)汎用サブルーチン呼び出しの書式をまちがえていないか?
 ・ (あなた自身によるシナリオの場合)その他、上記(1)のミスのチェック。
 
  &aname(Error5-3);(3) なら、Windows の言語設定が日本語以外になってないでしょうか? もしそうなら、Windows のスタートメニューから、
 control panel->regional and language setting
 (コントロールパネル->地域と言語のオプション)
 を呼び出し、言語を japanese(日本語)にしてください。
  また、Src.inf 中の「UseDirectMusic」の on/off を逆にすると直る場合もあります。
  SRC.exe の実行モードが「互換モード」になっているかもしれません。Windows でSRC.exeのアイコンを右クリックし「プロパティ」->「互換性」タブ->「互換モード」の項(WindowsXPの場合です。他のバージョンでは少し異なります)にチェックがあればはずしてください。
  それ以外の場合は、VB5 ランタイムを再インストールしてみてください。
 
 ''&color(darkred){★ 実行時エラー'11' :0で除算しました。};''(VB エラーメッセージ)
 
  文字通りゼロで割ろうとしたときに起こるエラーですが、SRC ではイベントファイルでそのような計算をしてしまったときだけでなく、イベントファイルやデータの記述ミスによる場合もあります。このうち特に多いのが武器属性「連」のレベル表記を全角にしてしまうミスや、変数名の書きまちがいなどにより、ゼロを想定していないコマンドパラメータにゼロを入れてしまうなどです。
 
 ''&color(darkred){★ 実行時エラー'9' :インデックスが有効範囲にありません};''(VB エラーメッセージ)
 
  このエラーもありえる可能性はいろいろありますが、比較的、パイロットデータ・ユニットデータ・エリアスデータなどの記述ミスによる場合が多いようです。また、スペシャルパワーがゼロ以下のパイロットのスペシャルパワーコマンドを実行しようとしたときや、存在しないデータを操作しようとしたときにもしばしば起こります。
 
 ''&color(darkred){★ 実行時エラー'13' :型が一致しません};''(VB エラーメッセージ)
 
  VBエラーの常として、このエラーの原因も可能性は多様ですが、比較的以下の場合が多いようです。
 
 -データとりわけパイロットデータ・ユニットデータ・アイテムデータの書式ミス
  陣営ターン冒頭や味方ターンでユニットを動かそうとしたときのエラーなら、その直前に作られたユニットデータなどの書式まちがいが原因の第1候補になります。
  書式ミスの種類では、データや特殊能力パラメータの数に過不足があったり、データ区切り ',' が別の字になったりして以降のデータがずれるケース、数値を入れるべきところに文字列('-'など)が入っているケースが多いようです。
  [[Q507.>その他よくある質問#u7a2e774]]を参照してデータの厳密なチェックをおすすめします。
 
 -イベントコマンドのパラメータ数に過不足がある
  とりわけ、ChangeModeコマンドのパラメータが多すぎるケースが、過去複数報告されています。敵ターン冒頭でのエラーは、この可能性もあります。
 
 -イベントファイルに余計な End や Exit などがある
 
 **Windowsエラーメッセージ[#WinErr]
 ''&color(darkred){★ 問題が発生したため、SRC.exe を終了します。ご不便をおかけして申し訳ありません。};''
 ''&color(darkred){★ このプログラムは不正な処理を行ったので強制終了されます。};''
   (Windows エラーメッセージ)
 
  このエラーメッセージは、SRC に原因があるかのように表現されてますが、Windows のエラーです。このエラーを引き起こすのはおもに、
 (1) メモリ不足など、マシン環境が Windows の想定外の状態になったとき、
 (2) SRC の特定の動作を、Windows が受け付けなかったときです。
 
  おもな対策は以下の通りです。
  (Windows 関係については、ごく基本的なことにとどめます。詳しくは、ネットで検索して調べたり、身近の詳しい人に相談したりしてください)
 
 (1.1) パソコンがメモリ不足かハードディスクの容量不足になってないかチェックしてください。メモリの状態は、Windows付属の「Windowsタスクマネージャー」などで調べることができます。
  メモリ不足の場合、パソコン起動時に余計なソフトが起動されているかもしれません。スタートメニューのスタートアップフォルダなどをチェックしてください。
  たいていの場合、ハードディスクには節約の余地がかなりあります。不要なソフト、ネットブラウザのキャッシュや各ソフトの過去ログ、音声・画像など大容量のデータなどです。Windows XP 以降なら「システムの復元」の設定を変えるのも有力な手段です。
 (1.2) グラフィック・音声など特定種類の機能を呼び出したときエラーが出る場合、関連デバイスの不具合がありえます。
 (2.1) 特定のコマンドでエラーが出る場合は、SRC 本体の改定で対応できるかもしれません。「どのコマンドでどのような状態でエラーが出るのか」をできるだけ見極めた上で、バグ掲示板にてご報告をお願いします。
 (2.2) コマンドのパラメータ抜けやパラメータがヘルプに注記してある許容範囲を超えている場合など、SRCの想定外の記述が原因の場合もあります。よくあるのは、PaintPicture コマンドで画像のサイズが 4の倍数でないケースです。
 (2.3) 画像や特殊効果関係のコマンドやサブルーチン呼び出しでパラメータ抜けがあったときこのエラーが出ることもあります。自作品の場合はそれをチェックし、他の人の作品の場合は汎用データが古くないか確認した上で、作者にバグ報告をお願いします。
 
 ''&color(darkred){★ MSVBVM50.DLLが見つかりません};'' など(バリエーションあり)
   (Windows エラーメッセージ)
  [[Q201.を参照>導入直後のエラー#g9865d49]]してください。
 
 -----
 *コメント [#ia8e7067]
 #comment_nospam