0
votes

I have a brother scanner with an ADF. The ADF works great from win fax and scan, but when i access it via WIA, i try to set the feeder to 1. The problem is that while iterating through the property id, it never gets to 3078.

Here's a list of the ids that it does expose

4098,4099,4101,4102,4103,4104,4105,4106,4107,4108,4109,
4110,4111,4112,4113,4114,4116,4118,4120,4123,6146,6147,
6148,6149,6150,6151,6152,6153,6154,6155,6156,6157,6159,6161

here's my code

Dim cl = New CommonDialog
    Dim scanner = cl.ShowSelectDevice(WiaDeviceType.ScannerDeviceType, False, False).Items(1)
    Dim ids = (From x As WIA.Property In scanner.Properties Select x.PropertyID).ToList
    ids.Sort()
    MessageBox.Show(ids.Joined)
    For Each prp As WIA.Property In scanner.Properties
        Dim iprp = CType(prp, IProperty)
        Select Case prp.PropertyID
            Case 3078
                MessageBox.Show("going to set " & prp.PropertyID)
                iprp.let_Value(1)
        End Select
    Next

any ideas?

I'm not locked on WIA, if there's a better library, I'll be interested.

2
If your application is mainly for scanners, I recommend you use TWAIN. twain.orgWindy

2 Answers

0
votes

the answer is this excellent library: http://code.google.com/p/twaindotnet/

works like a charm

0
votes

The problem is here:

Dim scanner = cl.ShowSelectDevice(WiaDeviceType.ScannerDeviceType, False, False).Items(1);

The property you're trying to reach is in here:

cl.ShowSelectDevice(WiaDeviceType.ScannerDeviceType, False, False);