0

Visual Studio 2010、XNA 4.0 ゲーム ソリューションがあります。「ゲーム」と呼んでください。これには、「GameContent」という名前のコンテンツ プロジェクトが関連付けられた「Game」という名前のプロジェクトがあります。また、「LevelEditorContent」という名前の関連するコンテンツ プロジェクトを使用して、「LevelEditor」という名前のソリューションで 2 つ目のプロジェクトを作成しました。

Game と LevelEditor はどちらも、独自のコンテンツ プロジェクトからコンテンツをロードできますが、問題ありません。ただし、LevelEditor が GameContent からコンテンツをロードできるかどうかを確認することにしたので、LevelEditor のコンテンツ参照を GameContent に追加しました。

ここで、[デバッグ] をクリックするか F5 キーを押すと、コンテンツの 1 つで FileNotFound エラーが発生してゲームがクラッシュします。LevelEditor からコンテンツ参照を削除すると、ゲームが再び機能します。理由がわかりません。ゲームは唯一のスタートアップ プロジェクトです。

さらに奇妙なことに、ソリューション エクスプローラーでゲーム プロジェクトを右クリックし、[デバッグ] を選択してから [新しいインスタンスを開始] を選択すると、レベルエディターにそのコンテンツ参照があるかどうかに関係なく、ゲームは正常に実行されます。

DIFFERENT プロジェクトのコンテンツ参照が、ゲームのコンテンツをロードする機能を台無しにするのはなぜですか? F5/Debug と Start New Instance の違いは何ですか?

4

1 に答える 1

1

問題を再現できませんでした。その例外のすべての詳細を読んで、ファイルを見つけようとする場所と見つからない理由を確認してください。ContentManager.RootDirectory と Environment.CurrentDirectory が正しく、すべてのコンテンツが適切に構築されていることを確認してください。リビルドしたら何か変わるの?

于 2012-04-19T06:04:19.007 に答える