我无法让我的Canon Pixma MP150从c#代码扫描彩色扫描.以下代码生成黑白图像,或者如果我将6146的值更改为2,则会创建灰度图像.我希望能够从代码中进行彩色扫描.我知道扫描仪会对彩色图像进行彩色处理,因为我可以通过"扫描仪和相机"中的xp向导执行此操作.任何人都可以帮我弄清楚我没有为彩色扫描设置什么价值.我可以找到的所有文档和示例都只是为了更改6146的值.
感谢您抽出时间来阅读!
private void ScanAndSaveOnePage ()
{
WIA.CommonDialog Dialog1 = new WIA.CommonDialogClass();
WIA.DeviceManager DeviceManager1 = new WIA.DeviceManagerClass();
System.Object Object1 = null;
System.Object Object2 = null;
WIA.Device Scanner = null;
Scanner = Dialog1.ShowSelectDevice(WIA.WiaDeviceType.ScannerDeviceType, false, false);
WIA.Item Item1 = Scanner.Items[1];
setItem(Item1, "6146", 1);
setItem(Item1, "6147", 150);
setItem(Item1, "6148", 150);
setItem(Item1, "6151", 150 * 8.5);
setItem(Item1, "6152", 150 * 11);
WIA.ImageFile Image1 = new WIA.ImageFile();
WIA.ImageProcess ImageProcess1 = new WIA.ImageProcess();
Object1 = (Object)"Convert";
ImageProcess1.Filters.Add(ImageProcess1.FilterInfos.get_Item(ref Object1).FilterID, 0);
Object1 = (Object)"FormatID";
Object2 = …Run Code Online (Sandbox Code Playgroud) 在我的工作中,我们通过加密来保护数据,并且该数据由 .NET Compact Framework 加密,并且必须由服务器上的常规 .NET 框架读取。我们遇到了一个问题,即紧凑框架无法使用已知公钥的 RSA 进行加密(引发异常)。服务器将公钥传递给紧凑框架设备。下面是为紧凑框架编写的测试应用程序以显示问题。
string mod =
"rgTcL0/ZK3j5Rt6CigEsfyLDiERh2PuVzmZVdHbb/2jQOG5JEcAqqBoscDZ4PwJR8aO19xNVTce7"
+ "vzbEued32z2PLAvCcHFKGtOgNEeZ+ZcD6uHobsKws76BdjBrI7Pigk2HSkak21n2WoVcBVHoRmcn"
+ "eX7DPaB4atamhkbLoRBF1VlautDfhX9lnOFA2zyZUCB5CproavKF6wl19pZne2Q4U1vMtBAA2Q9N"
+ "aZFsrj/KjE3UtYKvjd4Oy55Hmtpb5P3CZAVpiyCTKq3gTxDJn69giyctu428DgkKacmZ4yTvkLWB"
+ "Ym/zWtAf9o8pI+3MwgF7wzuK5ypGack3l4/Skw==";
string exp = "AQAB";
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(2048);
RSAParameters p = new RSAParameters();
p.Modulus = Convert.FromBase64String(mod);
p.Exponent = Convert.FromBase64String(exp);
rsa.ImportParameters(p);
var bytes = rsa.Encrypt(System.Text.Encoding.ASCII.GetBytes("MIKE"), true);
Run Code Online (Sandbox Code Playgroud)
当调用“Encrypt”方法时,此代码会产生以下异常:
Framework: 3.5.7283.0
Exception: fOAEP
InnerException: Could not evaluate expression
Stack Trace:
at System.Security.Cryptography.RSACryptoServiceProvider.Encrypt
(Byte[] rgb, Boolean fOAEP)
Run Code Online (Sandbox Code Playgroud)
有谁知道我还应该尝试/做些什么?我已经用常规 .NET 编写了这段代码,并且运行得很好。我可以使用不同的实例进行加密和解密。任何帮助,将不胜感激。
谢谢!