[Bug 28141] Delphi Twain examples don't work

WineHQ Bugzilla wine-bugs at winehq.org
Fri Mar 13 11:52:46 CDT 2020


https://bugs.winehq.org/show_bug.cgi?id=28141

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |FIXED
                URL|http://delphitwain.sourcefo |https://web.archive.org/web
                   |rge.net/                    |/20051007000307/http://delp
                   |                            |hitwain.sourceforge.net/sim
                   |                            |pleexample.zip
            Summary|Twain interface doesn't     |Delphi Twain examples don't
                   |work                        |work
      Fixed by SHA1|                            |02d0d68bca2a93a7ed5333402d9
                   |                            |165eb16feb06d

--- Comment #11 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

resolving here, source selection and scanning works fine for me.

--- snip ---
$ WINEDEBUG=+twain wine ./SimpleExample.exe
...
0009:trace:twain:TWAIN_UserSelect <-- "xerox_mfp:tcp 192.168.178.43"
0009:trace:twain:DSM_Entry (DG=1 DAT=3 MSG=4)
0009:trace:twain:TWAIN_IdentityGetFirst DG_CONTROL/DAT_IDENTITY/MSG_GETFIRST
0009:trace:twain:DSM_Entry (DG=1 DAT=3 MSG=5)
0009:trace:twain:TWAIN_IdentityGetNext DG_CONTROL/DAT_IDENTITY/MSG_GETNEXT
0009:trace:twain:DSM_Entry (DG=1 DAT=3 MSG=5)
0009:trace:twain:TWAIN_IdentityGetNext DG_CONTROL/DAT_IDENTITY/MSG_GETNEXT
0009:trace:twain:DSM_Entry (DG=1 DAT=3 MSG=5)
0009:trace:twain:TWAIN_IdentityGetNext DG_CONTROL/DAT_IDENTITY/MSG_GETNEXT
0009:trace:twain:DSM_Entry (DG=1 DAT=3 MSG=1025)
0009:trace:twain:TWAIN_OpenDS DG_CONTROL/DAT_IDENTITY/MSG_OPENDS
0009:trace:twain:TWAIN_OpenDS pIdentity is xerox_mfp:tcp 192.168.178.43
0009:trace:twain:DllMain 0x7dd10000,1,(nil)
0009:trace:twain:DS_Entry (DG=1 DAT=3 MSG=1025)
0009:trace:twain:detect_sane_devices detecting sane...
0009:trace:twain:SANE_SaneCapability capability=4103 action=7
0009:trace:twain:SANE_CAPAutofeed CAP_AUTOFEED
0009:trace:twain:SANE_SaneCapability capability=4098 action=7
0009:trace:twain:SANE_CAPFeederEnabled CAP_FEEDERENABLED
0009:trace:twain:SANE_SaneCapability capability=4386 action=7
0009:trace:twain:SANE_ICAPSupportedSizes ICAP_SUPPORTEDSIZES
0009:trace:twain:DSM_Entry (DG=1 DAT=9 MSG=1282)
0009:trace:twain:DSM_Entry Forwarding 1/9/1282/0032EF98 to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=9 MSG=1282)
0009:trace:twain:SANE_EnableDSUserInterface
DG_CONTROL/DAT_USERINTERFACE/MSG_ENABLEDS
0009:trace:twain:InitializeDialog 2 Scan resolution 1 2
0009:trace:twain:InitializeDialog 3 Scan mode 3 3
0009:trace:twain:InitializeDialog 5 Scan source 3 3
0009:trace:twain:InitializeDialog 2 Scan resolution 1 2
0009:trace:twain:InitializeDialog 3 Scan mode 3 3
0009:trace:twain:InitializeDialog 5 Scan source 3 3
0009:trace:twain:DSM_Entry (DG=1 DAT=2 MSG=1537)
0009:trace:twain:TWAIN_ProcessEvent 1c,c051
0009:trace:twain:DSM_Entry Forwarding 1/2/1537/0032DE44 to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=2 MSG=1537)
0009:trace:twain:SANE_ProcessEvent DG_CONTROL/DAT_EVENT/MSG_PROCESSEVENT  msg
0x1c, wParam 0x0
0009:trace:twain:DSM_Entry return value is 5
0009:trace:twain:DSM_Entry (DG=1 DAT=2 MSG=1537)
0009:trace:twain:TWAIN_ProcessEvent 1c,c051
0009:trace:twain:DSM_Entry Forwarding 1/2/1537/0032DDC4 to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=2 MSG=1537)
0009:trace:twain:SANE_ProcessEvent DG_CONTROL/DAT_EVENT/MSG_PROCESSEVENT  msg
0x1c, wParam 0x1
0009:trace:twain:DSM_Entry return value is 5
0009:trace:twain:InitializeDialog 7 Top-left x 2 1
0009:trace:twain:InitializeDialog 8 Top-left y 2 1
0009:trace:twain:InitializeDialog 9 Bottom-right x 2 1
0009:trace:twain:InitializeDialog 10 Bottom-right y 2 1
0009:trace:twain:InitializeDialog 7 Top-left x 2 1
0009:trace:twain:InitializeDialog 8 Top-left y 2 1
0009:trace:twain:InitializeDialog 9 Bottom-right x 2 1
0009:trace:twain:InitializeDialog 10 Bottom-right y 2 1
0009:trace:twain:InitializeDialog 2 Scan resolution 1 2
0009:trace:twain:InitializeDialog 3 Scan mode 3 3
0009:trace:twain:InitializeDialog 5 Scan source 3 3
0009:trace:twain:DSM_Entry (DG=1 DAT=0 MSG=257)
0009:trace:twain:TWAIN_ControlNull DG_CONTROL/DAT_NULL MSG=257
0009:trace:twain:DSM_Entry (DG=1 DAT=0 MSG=257)
0009:trace:twain:TWAIN_ControlNull DG_CONTROL/DAT_NULL MSG=257
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=1 DAT=2 MSG=1537)
0009:trace:twain:TWAIN_ProcessEvent c051,c051
0009:trace:twain:TWAIN_ProcessEvent <-- 101
0009:trace:twain:DSM_Entry (DG=1 DAT=1 MSG=6)
0009:trace:twain:DSM_Entry Forwarding 1/1/6/0032FB80 to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=1 MSG=6)
0009:trace:twain:SANE_CapabilitySet DG_CONTROL/DAT_CAPABILITY/MSG_SET
0009:trace:twain:DSM_Entry return value is 1
0009:trace:twain:DSM_Entry (DG=1 DAT=8 MSG=1)
0009:trace:twain:DSM_Entry Forwarding 1/8/1/0032FB6C to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=8 MSG=1)
0009:trace:twain:SANE_GetDSStatus DG_CONTROL/DAT_STATUS/MSG_GET
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=2 DAT=257 MSG=1)
0009:trace:twain:DSM_Entry Forwarding 2/257/1/0032F774 to DS.
0009:trace:twain:DS_Entry (DG=2 DAT=257 MSG=1)
0009:trace:twain:SANE_ImageInfoGet DG_IMAGE/DAT_IMAGEINFO/MSG_GET
0009:trace:twain:SANE_ImageInfoGet Getting parameters
0009:trace:twain:SANE_ImageInfoGet Bits per Sample 8
0009:trace:twain:SANE_ImageInfoGet Frame Format 1
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=1 DAT=6 MSG=1)
0009:trace:twain:DSM_Entry Forwarding 1/6/1/0032F79E to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=6 MSG=1)
0009:trace:twain:SANE_SetupMemXferGet DG_CONTROL/DAT_SETUPMEMXFER/MSG_GET
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=1 DAT=1 MSG=1)
0009:trace:twain:DSM_Entry Forwarding 1/1/1/0032F6A0 to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=1 MSG=1)
0009:trace:twain:SANE_CapabilityGet DG_CONTROL/DAT_CAPABILITY/MSG_GET
0009:trace:twain:SANE_SaneCapability capability=258 action=1
0009:trace:twain:SANE_ICAPUnits ICAP_UNITS
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=1 DAT=6 MSG=1)
0009:trace:twain:DSM_Entry Forwarding 1/6/1/0032FB68 to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=6 MSG=1)
0009:trace:twain:SANE_SetupMemXferGet DG_CONTROL/DAT_SETUPMEMXFER/MSG_GET
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=2 DAT=259 MSG=1)
0009:trace:twain:DSM_Entry Forwarding 2/259/1/0032FB74 to DS.
0009:trace:twain:DS_Entry (DG=2 DAT=259 MSG=1)
0009:trace:twain:SANE_ImageMemXferGet DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET
0009:trace:twain:SANE_ImageMemXferGet Acquiring image 1280x1630x8 bits
(format=1 last=1) from sane...
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=2 DAT=259 MSG=1)
0009:trace:twain:DSM_Entry Forwarding 2/259/1/0032FB74 to DS.
0009:trace:twain:DS_Entry (DG=2 DAT=259 MSG=1)
0009:trace:twain:SANE_ImageMemXferGet DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET
...
0009:trace:twain:SANE_ImageMemXferGet DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET
0009:trace:twain:SANE_ImageMemXferGet psane_read: End of file reached
0009:trace:twain:DSM_Entry return value is 6
0009:trace:twain:DSM_Entry (DG=1 DAT=5 MSG=1793)
0009:trace:twain:DSM_Entry Forwarding 1/5/1793/0032FBCC to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=5 MSG=1793)
0009:trace:twain:SANE_PendingXfersEndXfer
DG_CONTROL/DAT_PENDINGXFERS/MSG_ENDXFER
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=1 DAT=5 MSG=7)
0009:trace:twain:DSM_Entry Forwarding 1/5/7/0032FBCC to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=5 MSG=7)
0009:trace:twain:SANE_PendingXfersReset DG_CONTROL/DAT_PENDINGXFERS/MSG_RESET
0009:trace:twain:DSM_Entry return value is 0
0009:trace:twain:DSM_Entry (DG=1 DAT=9 MSG=1281)
0009:trace:twain:DSM_Entry Forwarding 1/9/1281/0032FBA8 to DS.
0009:trace:twain:DS_Entry (DG=1 DAT=9 MSG=1281)
0009:trace:twain:SANE_DisableDSUserInterface
DG_CONTROL/DAT_USERINTERFACE/MSG_DISABLEDS
0009:trace:twain:DSM_Entry return value is 0
--- snip ---

Using commit
https://source.winehq.org/git/wine.git/commitdiff/02d0d68bca2a93a7ed5333402d9165eb16feb06d
("twain_32: Implement source selection dialog.") as resolution.

There are few relevant commits preceeding as well:

https://source.winehq.org/git/wine.git/commitdiff/870c4f3e99e373063978ba833fa201e78d7bd73e
("sane.ds: Send events to applications through the DSM.")

...

Thanks Vincent

$ sha1sum simpleexample.zip 
fb9218742c07438e54f985c158d507eb26346d97  simpleexample.zip

$ du -sh simpleexample.zip 
184K    simpleexample.zip

$ wine --version
wine-5.3-341-gc3165b4c96

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


More information about the wine-bugs mailing list