我正在使用imagemagix.Net dll构建图像转换器应用程序,我得到了这个错误我做的事情..文件存在的东西,甚至它将dll复制到项目调试文件夹。有什么建议吗? 错误:
System.IO.FileNotFoundException was unhandled
HResult=-2147024770
Message=Could not load file or assembly 'ImageMagickNET.dll' or one of its dependencies. The specified module could not be found.
Source=WindowsFormsApplication1
FileName=ImageMagickNET.dll
FusionLog=""
StackTrace:
at WindowsFormsApplication1.Form1.button1_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at WindowsFormsApplication1.Program.Main() in c:\Users\serak\Documents\Visual Studio 2012\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Program.cs:line 18
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
源代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using ImageMagickNET;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
string fileloc;
MagickNet m;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
MagickNet.InitializeMagick();
}
private void button1_Click(object sender, EventArgs e)
{
MagickNet.InitializeMagick();
OpenFileDialog fl= new OpenFileDialog ();
if (fl.ShowDialog() == DialogResult.OK)
{
fileloc = fl.FileName;
using (ImageMagickNET.ImageList im = new ImageMagickNET.ImageList())
{
im.ReadImages(fileloc);
int i = 0;
foreach (ImageMagickNET.Image image in im)
{
image.Quality = 100;
image.CompressType = ImageMagickNET.CompressionType.LosslessJPEGCompression;
image.Write(fileloc.Substring(0, fileloc.LastIndexOf('\\')) + i + ".jpg");
++i;
}
}
}
}
}
}
答案 0 :(得分:0)
IT的漫长道路过程我只是想将压缩的Tiff图像转换为未压缩的200dpi图像......无论如何,这个问题的解决方案是这个.. ** Fabiobr的说明对我来说非常合适,有一个小插件,所以我要总结一下:(我使用的是8位版本......只需用“16”代替“8”指令“8”下文)
1)下载此项目并将其解压缩到任何地方。 2)在您的项目中,引用bin \ Q8文件夹中的ImageMagickNET.dll。 3)转到http://image_magick.veidrodis.com/image_magick/binaries/并下载'ImageMagick-6.5.3-10-Q8-windows-dll.exe' 4)运行安装,接受所有默认值。 5)将C:\ Program Files \ ImageMagick-6.5.3-Q8中的所有DLL复制到项目的ROOT文件夹中。 (不是bin文件夹) 6)将“复制到输出目录”设置为“始终复制”
如果将DLL复制到bin文件夹,则在调试(或发布)时它们将不会与可执行文件位于同一文件夹中,并且会出现此错误。通过将它们复制到根文件夹,它们将被复制到与可执行文件相同的目录中。
现在,如果只有帮助文档更好...... **