[英]EmguCV Exception when published on IIS
My ASP.NET App works fine if I debug or run it on my local IIS. 如果我在本地IIS上调试或运行它,我的ASP.NET App可以正常工作。 But if I publish it onto an IIS, it looks like EmguCV looses the dlls it needs.
但是,如果我将其发布到IIS上,则好像EmguCV失去了所需的dll。 The bin folder of my VS project an the bin folder on the IIS are identical.
我的VS项目的bin文件夹与IIS上的bin文件夹相同。
The following exception occurs: The type initializer for 'Emgu.CV.CvInvoke' threw an exception. 发生以下异常:'Emgu.CV.CvInvoke'的类型初始化器引发了异常。 StackTrace: at Emgu.CV.CvInvoke.cvCreateImageHeader(Size size, IPL_DEPTH depth, Int32 channels) at Emgu.CV.Image
2.AllocateData(Int32 rows, Int32 cols, Int32 numberOfChannels) at Emgu.CV.Image
2.set_Bitmap(Bitmap value) at CustomerserviceWizard.ImageHelper.DecodeUrl(LuminanceSource source, Bitmap bitmap, List`1 methods) in :line 213 StackTrace:在Emgu.CV.Image 2.处为Emgu.CV.CvInvoke.cvCreateImageHeader(大小大小,IPL_DEPTH深度,Int32通道)在Emgu.CV.Image
2.AllocateData(Int32 rows, Int32 cols, Int32 numberOfChannels) at Emgu.CV.Image
处为2.AllocateData(Int32 rows, Int32 cols, Int32 numberOfChannels) at Emgu.CV.Image
.set_Bitmap(位图)值)在第213行的CustomerserviceWizard.ImageHelper.DecodeUrl(LuminanceSource源,位图位图,列表1方法)处
Any help is appreciated. 任何帮助表示赞赏。
我曾经遇到过类似的问题,也许这对您有帮助:请检查IIS应用程序池设置,并确保在“高级设置”下启用32位应用程序。
Alright, after a lot of research and grey hair I finally convinced my boss to just use an Desktop PC to process images with EmguCV. 好吧,经过大量研究和研究,我终于说服了我的老板只使用台式PC通过EmguCV处理图像。 The (quite obvious) reason for the exception was the missing nVidia Cuda GPU in the server.
(非常明显的)例外原因是服务器中缺少nVidia Cuda GPU。
Error shown when i tried to execute EmguCV on IIS - Unable to load DLL 'cvextern': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
当我尝试在IIS上执行EmguCV时显示错误-
Unable to load DLL 'cvextern': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
Unable to load DLL 'cvextern': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
Exception - The type initializer for 'Emgu.CV.CvInvoke' threw an exception
. 异常
The type initializer for 'Emgu.CV.CvInvoke' threw an exception
。
In my case, I solved this by enabling UI Desktop experience for windows server (In my case - Windows Server 2012 R2) because Microsoft never enabled that feature on Windows Server by default. 就我而言,我通过为Windows服务器(在我的情况下为Windows Server 2012 R2)启用UI桌面体验解决了此问题,因为默认情况下,Microsoft从未在Windows Server上启用该功能。
Solution 解
For Windows Server 2008 对于Windows Server 2008
For Windows Server 2012 对于Windows Server 2012
Hope this solution can help you :) 希望此解决方案可以为您提供帮助:)
Links - Solution from GitHub & Description with screenshot 链接- 来自GitHub的解决方案和说明以及屏幕截图
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.