WIAを使用して、スキャナーからWindowsフォームに画像をキャプチャしています。これが私が使用しているコードです:
private void button2_Click(object sender, EventArgs e)
{
const string wiaFormatJPEG = "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}";
CommonDialogClass wiaDiag = new CommonDialogClass();
WIA.ImageFile wiaImage = null;
wiaImage = wiaDiag.ShowAcquireImage(
WiaDeviceType.UnspecifiedDeviceType,
WiaImageIntent.GrayscaleIntent,
WiaImageBias.MaximizeQuality,
wiaFormatJPEG, true, true, false);
WIA.Vector vector = wiaImage.FileData;
Image i = Image.FromStream(new MemoryStream((byte[])vector.get_BinaryData()));
i.Save(@"D:\prueba1.jpeg");
}
この小さなテストを実行しようとすると、次のエラーが発生します。
相互運用タイプ'WIA.CommonDialogClass'を埋め込むことはできません。代わりに、該当するインターフェースを使用してください。
この:
「WIA.CommonDialogClass」には「ShowAcquireImage」の定義が含まれておらず、「WIA.CommonDialogClass」タイプの最初の引数を受け入れる拡張メソッド「ShowAcquireImage」が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?
最初のエラーが原因で2番目のエラーが発生していると思いますよね?
これを修正する方法について何か提案はありますか?