I'm getting an exception "Could not load file or assembly 'ImageMagickNET.dll' or one of its dependencies. The specified module could not be found." while implementing using ImageMagick.dll.
How can I over come this exception?
I am using Visual Studio 2010 for development on a windows 7 machine.
ImageMagick version: 1.0.3484.35397
Run time version : v2.0.50727
Add a Reference to the 'ImageMagickNet.dll' found in the 'bin\ReleaseQ8' or 'bin\RealeaseQ16' folders, choose one of them.
After that you have to download the ImageMagick 6.5.3-10 version DLLs for Q8/Q16 because the ImageMagickNet was built to this version. (I found all versions at this link: http://imagemagick.codeplex.com/releases/view/30302 For example, for Q16 download: ImageMagick-6.5.3-10-Q16-windows-dll.exe)
Then install it and copy all DLL files from 'C:\Program Files\ImageMagick-6.5.3-Q16' to your bin folder. Now you should be able to run it properly.
Related
I am using VS2017, MSBuild version 15.0. I have been installing taichi(https://github.com/yuanming-hu/taichi) .I have been facing lots of errors and trying to solve each step by step and now I am stuck with the following error. I have MSbuid 15.0 but it is looking for version 4.0 .
Build FAILED.
"C:\Users\5000\Documents\spgrid_topo_opt-master\taichi-master\build\taichi.sln" (default target) (1) ->
"C:\Users\5000\Documents\spgrid_topo_opt-master\taichi-master\build\ZERO_CHECK.vcxproj" (default target) (2) ->
(SetTelemetryEnvironmentVariables target) ->
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.Cpp.DesignTi
me.targets(491,5): error MSB4062: The "SetEnv" task could not be loaded from the assembly C:\Program Files (x86)
\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.Build.CppTasks.Common.dll. Could not
load file or assembly 'Microsoft.Build.Utilities.Core, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f
7f11d50a3a' or one of its dependencies. The system cannot find the file specified. Confirm that the <UsingTask>
declaration is correct, that the assembly and all its dependencies are available, and that the task contains a p
ublic class that implements Microsoft.Build.Framework.ITask. [C:\Users\5000\Documents\spgrid_topo_opt-master\tai
chi-master\build\ZERO_CHECK.vcxproj]
0 Warning(s)
1 Error(s)
1.Please open Developer Command Prompt for VS2017(come with build tools) and type the build command like: msbuild ZERO_CHECK.vcxproj
2.Check if it makes any difference,if same issue persists open vs installer and update the build tools to latest version. Then build the C++ project to check if it helps
I configured the similar environment like yours. And use the SetEnv task in .vcxproj file. But all works well when building the project.
So if all above can't work to resolve the issue: There is possibility that you call msbuild programmatically in code. If so, maybe you can get some help from this issue:
Try binding redirection, thanks to Nicolas.
Also, you can check this thread.
Any update feel free to contact me:)
Edit your PATH environment variable to ensure the first path to a directory containing msbuild.exe is the one included with Visual Studio 2017. This may be one of the following paths, depending on the edition you have and whether you installed it to the default location.
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin\
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\
I am working with SDL2 and its add-on libraries SDL2_image and SDL2_ttf, using Visual Studio 2017. The libraries, and the .dll files that come with them, are in another folder (C:\SDL2.0\lib\x86), which is in the system path.
When I run, it fails, with this error message:
The procedure entry point InterlockedCompareExchange#12 could not be located in the dynamic link library C:\SDL2.0\lib\x86\SDL2.ttf.dll.
I can fix this by putting libfreetype-6.dll, which comes with SDL2_ttf, in the same folder as the .vcxproj file; or in the Debug folder. I can also fix it by putting the .dll into c:\windows\SysWOW64. But I want to distribute my code, and I don't want to put that file in each folder or require users to have admin access (to access c:\windows\SysWOW64); I want Windows to find it in the PATH, as it does with the other .dll files it's using here.
A few things I tried as I looked around the web for solution (to no effect):
Recompiling libfreetype-6.dll
Downloading the latest versions of all associated libraries
Rearranging the .lib files in Project Properties, Linker, Input, Additional Dependencies. Admittedly I may not have tried all possible arrangements as there are several dependencies
regsvr32 libfreetype-6.dll. This led to a different error message:
The module "libfreetype-6.dll" may not be compatible with the version of Windows that you're running. Check if the module is compatible with an x86 (32-bit) or x64 (64-bit) version of regsvr32.exe.
I saw here that maybe I should use the version of regsvr32 in the system32 folder; when I do that, I get
The module "libfreetype-6.dll" was loaded but the entry-point DllRegisterServer was not found. Make sure that "libfreetype-6.dll" is a valid DLL or OCX file and then try again.
So: is there a way to get the program to find libfreetype-6.dll in another folder in the PATH, and eliminate the error message about the procedure entry point?
The program I'm testing on now is from the TrueType tutorial from the LazyFoo website (source).
I am running Embarcadero RAD Studio 10.1 Berlin Update 2 on Windows 10.
My IDE environment worked fine yesterday. I compiled and build successfully using the IDE. My normal operation before running and debugging my project is to compile a couple libraries and then build my executable. Once that is done, then I'll run the executable to check out the functionality and debug etc.
This morning I compiled my libraries, as I always do, and I received the following error:
[bcc32 Error] dstring.h(17): E2209 Unable to open include file 'System.Internal.StrHlpr.hpp'
Full parser context
File.cpp(2): #include c:\program files (x86)\embarcadero\studio\18.0\include\windows\vcl\vcl.h
vcl.h(10): #include c:\program files (x86)\embarcadero\studio\18.0\include\windows\vcl\basepch0.h
basepch0.h(62): #include c:\program files (x86)\embarcadero\studio\18.0\include\windows\rtl\System.hpp
System.hpp(1599): #include c:\program files (x86)\embarcadero\studio\18.0\include\windows\rtl\sysclass.h
sysclass.h(46): #include c:\program files (x86)\embarcadero\studio\18.0\include\windows\rtl\dstring.h
I have ensured no pending changes exist in my local source and versioning.
I have tried cleaning, recompiling, and rebuilding.
My computer did run a Windows Update this morning. The following two were installed:
Cumulative Update for Windows 10 Version 1607 for x64-based Systems (KB4015438)
Update for Microsoft Outlook 2013 (KB3141495) 32-Bit Edition
I also checked out the files at the following referenced path: C:\Program Files (x86)\Embarcadero\Studio\18.0\include\windows\rtl
The file dates don't appear to suggest any changes were made recently to these files located withinn the rltl folder.
I have also tried restarting my computer.
What would cause something like this to happen and how would I go about resolving this?
System.Internal.StrHlpr.hpp is included in runtime library files when initially installing RAD Studio Berlin 10.1 Update 2.
By running the RAD Studio installer again and clicking repair installation during the process, this missing file is recovered and can again be found in the rtl folder: C:\Program Files (x86)\Embarcadero\Studio\18.0\include\windows\rtl\ allowing for successful compiling and building.
i just cant register some dll files that has been built with .net framework 4 in some systems that both client and extended versions of .net framework 4 is installed, when i copy regasm.exe from .net framework 4 folder and paste it among some dll files that i want to register them using regasm, it gives me this error :
"RegAsm : error RA0000 : Could not load file or assembly
'file:///file address/RegAsm.exe' or one of its dependencies.
Operation is not supported
. (Exception from HRESULT: 0x80131515)"
i use regasm like this :
M:\file address\RegAsm.exe M:\file address\myfile.dll
note : when i copy regasm from .net framework version 2 and use it, i don't have such a problem.
but i need to register some dll files that has been built with .net framework 4.
note 2 : i must add that in some systems like my system that visual Studio 2013 is installed, there isn't such a problem.
i saw questions like this with their own answers but their talking about this that regasm cant register some dll files, but in my case it gives error about its own self.
UPDATE
thank you jeff
I changed my registering command to something like this :
C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe M:\file address\myfile.dll
and now it's giving this error about my own dll files, but i know that i have all of the dependencies in the folder, this is the error :
RegAsm : error RA0000 : Could not load file or assembly
'file:///M:\file address\myfile.dll' or one of its dependencies.
Operation is not supported. (Exception from HRESULT: 0x80131515)
RegAsm is a .NET application with its own dependencies. The CLR is failing to load one of those dependencies when you copy the exe by itself to another computer. If .NET 4 is in fact installed on that computer, RegAsm.exe should be in the .NET directories under Windows and you shouldn't need to copy it from another computer.
I have a very simple jar file and I'm trying to convert it to a mono dll using ikvmc, but I'm getting the message "Error: unable to load runtime assembly".
My command line is:
ikvmc -target:library test.jar
My jar contains only one class, that simply has a method returning a String.
I'm just trying to experiment with ikvmc at this point before starting to develop some more complicated things.
I'm using:
Open Suse 11.3, 32 bits
kernel 3.11.6-4-desktop
ikvmc version 0.44.0.5
mono 3.0.6
Any hints?
Ok, I've got it working...
I've copied all files on folder "/usr/lib/mono/ikvm" to folder "/usr/lib/ikvm".
Apparently, ikvmc searches for runtime assemblies on the same folder where ikvmc executable are located.
If someone knows a workaround or a unkown (for me, at least) setting that avoids such copy, I really would like to know.