Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Could not load file or assembly 'Magick.NET-x64' issue on mvc application

I am using the Magick.net library in an mvc3 web application and these are steps i did

My project is targeting AnyCPU and my machine is 64bit
Add reference of Magick.NET-x64.dll to the project. Installed Visual C++ Redistributable for Visual Studio 2012 Update 4 from here http://www.microsoft.com/en-us/download/details.aspx?id=30679 Installed Ghostscript 9.14 for Windows (64 bit) on machine Added

<add assembly="Magick.NET-x64, Version=7.0.0.0002, Culture=neutral, PublicKeyToken=2004825badfa91ec" />

on web.config file

Project is rebuilded successfully [and all dlls are in bin folder also], but while running i am getting the exceptions

Could not load file or assembly 'Magick.NET-x64' or one of its dependencies. An attempt was made to load a program with an incorrect format.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information > about the error and where it originated in the code.

Exception Details: System.BadImageFormatException: Could not load file or assembly 'Magick.NET-x64' or one of its dependencies. An attempt was > made to load a program with an incorrect format.

Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the > exception can be identified using the exception stack trace below.

Assembly Load Trace: The following information can be helpful to determine why the assembly 'Magick.NET-x64' could not be loaded.

=== Pre-bind state information === 
LOG: DisplayName = Magick.NET-x64 
(Partial) 
WRN: Partial binding information was supplied for an assembly: 
WRN: Assembly Name: Magick.NET-x64 | Domain ID: 6 
WRN: A partial bind occurs when only part of the assembly display name is provided. 
WRN: This might result in the binder loading an incorrect assembly. 
WRN: It is recommended to provide a fully specified textual identity for the assembly, 
WRN: that consists of the simple name, version, culture, and public key token. 
WRN: See whitepaper http://go.microsoft.com/fwlink/?LinkId=109270 for more information and common solutions to this issue. 
LOG: Appbase = file:///C:/Fagbokforlaget/SourceCodes/fbf_internal/picsilo/Source/ImageTagger/ 
LOG: Initial PrivatePath = C:\Fagbokforlaget\SourceCodes\fbf_internal\picsilo\Source\ImageTagger\bin
Calling assembly : (Unknown).

LOG: This bind starts in default load context. 
LOG: Using application configuration file: C:\Fagbokforlaget\SourceCodes\fbf_internal\picsilo\Source\ImageTagger\web.config 
LOG: Using host configuration file: 
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config. 
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind). 
LOG: Attempting download of new URL file:///C:/Users/jibinmathew/AppData/Local/Temp/Temporary ASP.NET Files/root/a5b5e44f/dc1c4c69/Magick.NET-x64.DLL. 
LOG: Attempting download of new URL file:///C:/Users/jibinmathew/AppData/Local/Temp/Temporary ASP.NET Files/root/a5b5e44f/dc1c4c69/Magick.NET-x64/Magick.NET-x64.DLL. 
LOG: Attempting download of new URL file:///C:/Fagbokforlaget/SourceCodes/fbf_internal/picsilo/Source/ImageTagger/bin/Magick.NET-x64.DLL. 
ERR: Failed to complete setup of assembly (hr = 0x8007000b). Probing terminated. 
like image 427
Sebastian Avatar asked Sep 03 '14 07:09

Sebastian


2 Answers

A revision to the blog post sited by @dlemstra has the easiest solution I've found for this:

In VS2013/2015, go to Tools --> Options --> Projects and Solutions --> Web Projects and select "Use the 64 bit version of IIS Express for web sites and projects."

Use 64 bit IIS Express

like image 92
AJ. Avatar answered Sep 27 '22 21:09

AJ.


There seems to be a problem when running the 64 bit version of Magick.NET in Visual Studio 2013's IIS Express. You need to set a registry key according to the following answer 'High quality JPEG compression with c#'. You could set this flag or switch to the AnyCPU version of Magick.NET.

like image 45
dlemstra Avatar answered Sep 27 '22 20:09

dlemstra