DTWAIN_GetTwainAvailabilityEx

DTWAIN_GetTwainAvailabilityExA

DTWAIN_GetTwainAvailabilityExW

Top  Previous  Next

The DTWAIN_GetTwainAvailabilityEx function tests to see which TWAIN Data Source Managers are available to the application, and returns the results of the test as a string.

 

LONG DTWAIN_GetTwainAvailabilityEx (

LPTSTR

lpszBuffer

LONG

MaxLen );,


Parameters


lpszBuffer

Specifies the address of the character buffer to store the information.  To ignore this value, this should be NULL

 

MaxLen

Specifies the maximum number of characters to copy to szBuffer.


Return Values

The number of characters copied to lpszBuffer, or if lpszBuffer is NULL / empty, the number of characters needed to store the entire string (including NULL terminator).

 

Character specific version

ANSI version:

DTWAIN_GetTwainAvailabilityExA

Unicode version:

DTWAIN_GetTwainAvailabilityExW


Comments

The DTWAIN_GetTwainAvailabilityEx function tests to see which TWAIN Data Source Managers are available for use by DTWAIN, and returns the directories into lpszBuffer, where each DSM is found as a pipe-delimted string.


If lpszBuffer is not NULL, lpszBuffer will store the returned string.  The MaxLen is the maximum number of characters to copy to lpszBuffer, including the terminating NULL character.


The returned string will be in the form:


Directory_1|Directory_2


where Directory_1 will be the full path name of the TWAIN DSM 1.x, and Directory_2 is the full path name of the TWAIN DSM 2.x  (TWAINDSM.DLL).  If Directory_1 or Directory_2 do not exist, the word <null> will be used in place of Directory_1 and/or Directory_2.


For example if lpszBuffer contains:

C:/Windows/TWAIN32.DLL|<null>


this means that TWAIN DSM 1.x is located at C:/Windows/TWAIN32.DLL, and there is no TWAIN DSM 2.x found.


Note that for 32-bit DTWAIN.DLL (dtwain32.dll, dtwain32u.dll), it is possible for  both a 1.x and 2.x TWAIN DSM to exist.  


For 64-bit DTWAIN.DLL (dtwain64.dll, dtwain64u.dll), Directory_1 will always be <null>, since there is no 64-bit TWAIN_32.DLL.  

 

TWAIN State Transitions

None

 

Prerequisite Function Call(s)

DTWAIN_SysInitialize

 

See Also

DTWAIN_IsTwainAvailable

DTWAIN_SetTwainDSM