私が開発しているアプリケーション(C#/ XNAで記述されたゲーム)は、Microsoft Visual Studio(2010)内から起動した場合と、MSVSの外部(Windowsエクスプローラーなど)から起動した場合とで動作が異なる場合があります。具体的には、MSVS内では発生しないエラー(例外が描画される)が発生することがあります。
この違いの理由は何でしょうか?理想的には、MSVSにアプリケーションをできるだけ厳密にチェックさせて、開発中にすべてのバグが実際に発生する(そして修正できる)ことを確認できるようにする方法があります。
この問題は、リリースモードとデバッグモードの両方で発生します。ゲームは多数の外部dll(nuclex lib、sharp dx)を使用しますが、これらのlibはすべてMSVSの内部と外部の両方から使用されます。ゲームは完全にシングルスレッドで実行されます。
質問は、デバッグする必要のある特定のエラーに関するものではなく、アプリケーションの起動方法から発生する可能性のある一般的な違いに関するものであることに注意してください。