cdeb Posted October 1, 2018 Share Posted October 1, 2018 (edited) I'm trying to verify which is the default scanner and if it is different from what I need to propose a choice among those available. All this is possible with eztw32.dll however I can not make certain functions work Are these: int TWAIN_GetDefaultSourceName(LPSTR pzName) string TWAIN_DefaultSourceName()int TWAIN_GetSourceList(void) source: http://www.eztwain.com/pub/eztp/EZTwain_User_Guide.pdf I tried this way but they do not work: Local $pzName $pzName = DllCall($pathDLL,"int","TWAIN_DefaultSourceName") ; $rc = DllCall($pathDLL,"int","TWAIN_GetDefaultSourceName", "str*", $pzName) ; $rc = DllCall($pathDLL,"int","TWAIN_GetDefaultSourceName","str", $pzName) ; $rc = DllCall($pathDLL,"int","TWAIN_GetSourceList") $rc = DllCall($pathDLL,"int","TWAIN_GetSourceList", "NONE", "") ; Can anyone help me? Everything else works, here is the code: Local $pathDLL = @ScriptDir&"\_res\eztw32.dll" Local $rc = DllCall($pathDLL,'int','TWAIN_EasyVersion') if @error <> 0 then MsgBox(16+262144, "DllCall Error", "Error load eztw32.dll") else ConsoleWrite('--> eztw32.dll version: ' & $rc[0]/100 & @CRLF) $rc = DllCall($pathDLL,"int","TWAIN_IsAvailable") If @error > 0 Then MsgBox(16+262144, "DllCall Error", "Error call DLL - TWAIN_IsAvailable") if $rc[0] <> 0 then ConsoleWrite('--> TWAIN available: RC = ' & $rc[0]&@CRLF) ;;;;;;;;;;;;;;;;;;;;;; I NEED HERE ;manual select scanner Local $hwnd $rc = DllCall($pathDLL,"long","TWAIN_SelectImageSource",'hwnd',$hwnd) ConsoleWrite('--> TWAIN_SelectImageSource = ' & $rc[0]&@CRLF) if $rc[0] <> 0 then ConsoleWrite("--> TWAIN device selected"&@CRLF) else ConsoleWrite("--> no TWAIN device selected"&@CRLF) endif Else ConsoleWrite('--> TWAIN NOT available: RC = ' & $rc[0]&@CRLF) ; es: 0 endif endif thank you Edited October 1, 2018 by cdeb Link to comment Share on other sites More sharing options...
Danyfirex Posted October 1, 2018 Share Posted October 1, 2018 Try this: Global $hEZTwain32 = DllOpen(@ScriptDir & "\_res\eztw32.dll") Local $aCall=0 $aCall=DllCall($hEZTwain32,"str","TWAIN_DefaultSourceName") ;~ $aCall[0] will store returned SourceName $aCall=DllCall($hEZTwain32,"int","TWAIN_GetDefaultSourceName","str*",0) ;~ $aCall[1] will store returned SourceName $aCall=DllCall($hEZTwain32,"int","TWAIN_GetSourceList") ;~ $aCall[0] source list DllClose($hEZTwain32) Saludos Danysys.com AutoIt... UDFs: VirusTotal API 2.0 UDF - libZPlay UDF - Apps: Guitar Tab Tester - VirusTotal Hash Checker Examples: Text-to-Speech ISpVoice Interface - Get installed applications - Enable/Disable Network connection PrintHookProc - WINTRUST - Mute Microphone Level - Get Connected NetWorks - Create NetWork Connection ShortCut Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now