The build warning is:
System.BadImageFormatException: Could not load file or assembly, File '...' or one of its dependencies. An attempt was made to load a program with an incorrect format.
I have rebuilt everything as x86 and checked all dependencies are 32bit. When I build, rtcli.exe is the only process that uses the Framework64 assembly manager:
Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll ... LOG: This bind starts in LoadFrom load context. WRN: Native image will not be probed in LoadFrom context. Native image will only be probed in default load context, like with Assembly.Load(). LOG: Using application configuration file: D:\GitHub\MyApp\packages\Reinforced.Typings.1.5.3\tools\net45\rtcli.exe.Config LOG: Using host configuration file: LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config. LOG: Attempting download of new URL file:///D:/GitHub/MyApp/MyWebApp/obj/x86/Debug/MyWebApp.dll. LOG: Assembly download was successful. Attempting setup of file: D:\GitHub\MyApp\MyWebApp\obj\x86\Debug\MyWebApp.dll LOG: Entering run-from-source setup phase. LOG: Assembly Name is: MyWebApp, Version=188.8.131.52, Culture=neutral, PublicKeyToken=null ERR: Invalid assembly platform or ContentType in file (hr = 0x8007000b). ERR: Run-from-source setup phase failed with hr = 0x8007000b. ERR: Failed to complete setup of assembly (hr = 0x8007000b). Probing terminated.
I can't figure out why it's using Framework64 when other build apps/processes dont error on the same dll and are using:
Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
Is there a way to force RT to use the x86/32bit assembly manager?
I'm having to manually update my ts files. The solution builds and runs fine otherwise. Any help appreciated.
User contributions licensed under CC BY-SA 3.0