2400dpi 以上の解像度でドキュメントをスキャンすると、(たとえば) 次のエラー メッセージが表示されます。
COMException: Ausnahme von HRESULT: 0x80010100 (RPC_E_SYS_CALL_FAILED)
また
COMException: Ausnahme von HRESULT: 0x8021006F
次のいずれかの行で
img = itm.Transfer(scanFormat.ScanFormat) as WIA.ImageFile;
img = ip.Apply(img as WIA.ImageFile);
上記のエラーのスクリーンショット:
http://www.amarant-it.de/TempDownload/WIA_Error01.png
または、WIA_Error02.png および WIA_Error03.png と同じパス
スキャンには、次のコードを使用します。
#region Image-Convert-Settings
//IP.Filters.Add IP.FilterInfos("Convert").FilterID
//IP.Filters(1).Properties("FormatID").Value = wiaFormatJPEG
WIA.IImageProcess ip = new WIA.ImageProcessClass();
object convert = "Convert";
WIA.IFilterInfo fi = ip.FilterInfos.get_Item(ref convert);
ip.Filters.Add(fi.FilterID, 0);
convert = "FormatID";
object formatstring = scanFormat.ScanFormat;
WIA.IFilter filter;
foreach (WIA.IFilter fTemp in ip.Filters)
{
filter = fTemp;
WIA.IProperty prop = filter.Properties.get_Item(ref convert);
prop.set_Value(ref formatstring);
}
#endregion
#region Image-Scan + Convert
img = itm.Transfer(scanFormat.ScanFormat) as WIA.ImageFile;
img = ip.Apply(img as WIA.ImageFile);
img.SaveFile("D:\\scan2." + img.FileExtension);
Image image = Image.FromFile("D:\\scan2." + img.FileExtension);
ilImages.Images.Add(image.ToString(), image);
alImages.Add(image);
if (ImageScanned != null)
{
ImageScanned(image);
}
#endregion
誰でもこの問題を解決できますか?
ありがとう