First let me explain that IME is short for Intel Management Engine. This is just the locking mechanism I had around my scanning logic and I know it solved the unresponsiveness issue.OK, then. I would probably do it differently but right now I cannot test it with an actual scanner. TwainAppId = TWIdentity.CreateFromAssembly(DataGroups.Image | DataGroups.Control, Assembly.GetEntryAssembly()) Īs I may have eluded, this was some years ago and I did not know all that much about threading at the time. Static volatile object _locker = new object() Var identity = TWIdentity.CreateFromAssembly(DataGroups.Image, Assembly.GetEntryAssembly()) Ĭonsole.WriteLine($"Scanning from ThreadPool.QueueUserWorkItem(o => TwainWork()) Note that it's a Console app, hence the use of ThreadPool. Is there a TWAIN capability I can use to increase the speed of this warm up process? I've tried changing the ICapXResolution and ICapYResolution, but these only increase the speed of the actual scan after the warm up, not affecting the warm up itself. This problem never occurs when using Canon's own app, IJ Scan Utility, which uses TWAIN and displays the same dialog, but only for a few seconds. While the program does work, the problem is that this warming up process sometimes takes far too long for no apparent reason, up to a few minutes. Once this process has finished, it begins scanning the document. The scanner has to warm up before scanning the image it displays the following popup while doing so: I'm writing a program to scan an image into an Image object. I'm trying to interface with a TWAIN-compliant multifunction printer and scanner, a Canon Pixma MG5750, from C# using the NTwain library.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |