簡體   English   中英

無法在C#中加載DLL'EDSDK.dll'Canon Canon錯誤

[英]Unable to load DLL 'EDSDK.dll' Canon SDK Error in C#

我正在嘗試使用Canon SDK添加到現有網站,並且它是調整大小選項。 我已將EDSDK.cs添加到我的App_Code文件夾中,並將這些dll添加到我的Bin目錄中:EdsImage.dll,EDSDK.dll,MLib.dll,Ucs32P.dll,DPPDLL.dll,DPPLibCom.dll和DPPRSC.dll。 我的代碼只是試圖將圖像轉換為JPG文件:

uint err;
        err = EDSDK.EdsInitializeSDK();
        IntPtr inStream;
        err = EDSDK.EdsCreateFileStream("img_001.CR2", EDSDK.EdsFileCreateDisposition.OpenExisting, EDSDK.EdsAccess.Read, out inStream);
        IntPtr imgRef;
        err = EDSDK.EdsCreateImageRef(inStream, out imgRef);
        err = EDSDK.EdsSetPropertyData(imgRef, EDSDK.PropID_WhiteBalance, 0, 4, EDSDK.WhiteBalance_Cloudy);
        IntPtr outStream;
        err = EDSDK.EdsCreateFileStream("img_001.jpg", EDSDK.EdsFileCreateDisposition.CreateAlways, EDSDK.EdsAccess.Write, out outStream);
        EDSDK.EdsImageInfo info;
        err = EDSDK.EdsGetImageInfo(imgRef, EDSDK.EdsImageSource.FullView, out info);
        EDSDK.EdsSaveImageSetting set = new EDSDK.EdsSaveImageSetting();
        set.JPEGQuality = 9;
        err = EDSDK.EdsSaveImage(imgRef, EDSDK.EdsTargetImageType.Jpeg, set, outStream);
        EDSDK.EdsRelease(imgRef);
        EDSDK.EdsRelease(inStream);
        EDSDK.EdsRelease(outStream);
        EDSDK.EdsTerminateSDK();

任何幫助將不勝感激。 謝謝!!

我發現了一個我想分享的解決方案,以防有人遇到同樣的問題。 我在http://www.centrostudiprogressofotografico.it/en/dcraw/上下載了.exe文件,並將其作為網站中的流程運行,以將.cr2轉換為jpg。 這是代碼:

string dcRawExe = HttpContext.Current.Server.MapPath("PATH TO:/dcraw-9.26-ms-64-bit.exe");
string strCR2File = "PATH TO CR2 FILE";
string strJPGFile = "PATH TO JPG FILE";
var startInfo = new ProcessStartInfo(dcRawExe)
{
    Arguments = "-c -e \"" + strCR2File + "\"",
    RedirectStandardOutput = true,
    UseShellExecute = false
};
var process = System.Diagnostics.Process.Start(startInfo);
var image = System.Drawing.Image.FromStream(process.StandardOutput.BaseStream);
image.Save(strJPGFile, System.Drawing.Imaging.ImageFormat.Jpeg);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM