APIs WIA - Interazione con lo Scanner [Problema Settaggio DUPLEX]

venerdì 20 aprile 2012 - 11.10
Tag Elenco Tags  C#  |  .NET 2.0  |  Windows 7  |  Visual Studio 2010

antocorleone Profilo | Newbie



Ciao a tutti,
sono un nuovo iscritto del forum, ma da tempo vi seguo cercando consigli.

Sto utilizzando la libreria WIA in una form application, poichè devo interagire e pilotare lo scanner senza software proprietario. (http://msdn.microsoft.com/en-us/library/ms630368)
Riesco a far funzionare l'applicazione solo in modalità FRONT, ma non in un DUPLEX (Fronte \ Retro). Stò sbattendo la testa da qualche giorno, ma non trovo la soluzione. Ecco dove mi dà l'eccezione:

#region DUPLEX
internal void setDuplex(ref WIA.Device WiaDev)
{
try
{
object obj = new object();
obj = WIA_DPS_DOCUMENT_HANDLING_SELECT.DUPLEX; //valore 0x0004

SetDeviceProperty(WiaDev, DEVICE_PROPERTY_DOCUMENT_HANDLING_SELECT_ID, obj);
}
catch (Exception ex)
{
string msg = ex.Message;
string trace = ex.StackTrace;
}
}

public static Property FindProperty(WIA.Properties properties,
int propertyId)
{
foreach (Property property in properties)
if (property.PropertyID == propertyId)
return property;
return null;
}

public static void SetDeviceProperty(Device device, int propertyId,
object value)
{
Property property = FindProperty(device.Properties, propertyId);
if (property != null)
property.set_Value(value); //Da' errore quando eseguo il SET della proprietà WIA_DPS_DOCUMENT_HANDLING_SELECT (ID 3088)
}
#endregion

Help me!
Grazie per l'attenzione

luigidibiasi Profilo | Guru

Per usare il feeder in WIA devi settare la proprietà 3087 e assicurarti che il setting sia andato a buon fine...
(non vedo nel codice nulla che riporti a 3087 a meno che tu non usi costanti e mi sono scappate)

PRIMA di ogni scansione devi interrogare il feeder (quello che chiami fronte/retro nel post) e verificare se
è ancora presente un foglio (dovrebbe rilevarlo in automatico) ...

Se rilevi il foglio devi eseguire TUTTO il codice di scansione:

* settaggio Risoluzioni (6147, 6148)
* settaggio tipo scansione (Color b/w) (6146)
* chiamare la transfer
* ritornare SU e ricontrollare il feeder


Luigi Di Biasi


http://www.dibiasi.it/
http://netsell.dibiasi.it - ecomm software -
http://blogs.dotnethell.it/luigidibiasi/
http://yadamp.unisa.it/ - YADAMP CMS -
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5