BadImageFormatException: Format of the executable (.exe) or library (.dll) is invalid. の解決方法

Unityでビルドしようとした時に出たエラー。

BadImageFormatException: Format of the executable (.exe) or library (.dll) is invalid.
Mono.Cecil.PE.ImageReader.ReadImage ()
Mono.Cecil.PE.ImageReader.ReadImage (Disposable`1 stream, System.String file_name)
Mono.Cecil.ModuleDefinition.ReadModule (Disposable`1 stream, System.String fileName, Mono.Cecil.ReaderParameters parameters)
Mono.Cecil.ModuleDefinition.ReadModule (System.String fileName, Mono.Cecil.ReaderParameters parameters)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors
at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (BuildPlayerOptions options) [0x0020e] in /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:181
at UnityEditor.BuildPlayerWindow.CallBuildMethods (Boolean askForBuildLocation, BuildOptions defaultBuildOptions) [0x00065] in /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:88
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

やけにビルド終わるの早いなと思っていたら、ビルドし始めて一瞬でエラーになってました。

解決方法

今回UnityプロジェクトがUSBメモリに入っていて、そのままUSB上でビルドしたのですが、それが良くなかった模様。
内部のHDDにコピーして、それを新たにUnityで開いてからビルドすると無事通りました!

Unityプロジェクトの場所を移動したときは間違ったパスのUnityプロジェクトを開かないように注意。
コピーしたあとOpen Projectで元のプロジェクト選ぶなんてことがないように(笑)

何回かUSBメモリ上でもビルド通ってるんですけどねえ、、、
「executable (.exe) or library (.dll)が不適切」って言われているので.dllファイルが問題だったっぽい。(Macだから.exeファイルは関係ないだろうし)

HDD容量がいっぱいなのでUSBメモリ上で管理してたんですが、やっぱりやりにくそうだなあ。

Commentsこの記事についたコメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です