Работа со сканером напрямую из Lotus Notes c помощью бесплатной библиотеки EZTW32.DLLПомещаем библиотеку в директорию приложений Lotus (по умолчанию c:\Lotus\Notes)Создаем агента или кнопку.Декларируем функции из библиотекиDim hDib As Long
Dim hPal As Long
Dim nPixTypes As Long
REM Used by several calls to get handle to current window
Dim hWND As Long
Declare Function [B]TWAIN_AcquireNative[/B] Lib_
"EZTW32.DLL" (Byval hWndApp%, Byval wPixTypes%) As Integer
Declare Function [B]TWAIN_AcquireToClipboard[/B] Lib_
"EZTW32.DLL" (Byval hwndApp%, Byval wPixTypes%) As Integer
Declare Function [B]TWAIN_AcquireToFilename[/B] Lib_
"EZTW32.DLL" (Byval hwndApp%, Byval bmpFileName$) As Integer
Declare Function TWAIN_SelectImageSource Lib "EZTW32.DLL" (Byval hwndApp%) As Integer
Declare Function TWAIN_IsAvailable Lib "EZTW32.DLL" () As Integer
Declare Function TWAIN_EasyVersion Lib "EZTW32.DLL" () As Integer
Declare Function TWAIN_State Lib "EZTW32.DLL" () As Integer
Declare Function TWAIN_WriteNativeToFilename Lib_
"EZTW32.DLL" (Byval hBitmap%, Byval bmpFileName$) As Integer
Declare Function TWAIN_DibDepth Lib "EZTW32.DLL" (Byval hdib%) As Integer
Declare Function TWAIN_DibWidth Lib "EZTW32.DLL" (Byval hdib%) As Integer
Declare Function TWAIN_DibHeight Lib "EZTW32.DLL" (Byval hdib%) As Integer
Declare Function TWAIN_DibNumColors Lib "EZTW32.DLL" (Byval hdib%) As IntegerВариант 1: Сканирование образа в текущий документSub Initialize
' Сканирует документ в буфер обмена и помещает из буфера в поле Body
Call TWAIN_AcquireToClipboard(0,0)
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = workspace.CurrentDocument
Call uidoc.GotoField( "Body" )
Call uidoc.Paste
End SubВариант 2: Сканирование образа и отправка по почте с присоедененным файломSub Initialize
' Сканирует документ и отправляет по почте на указанный адрес
' адрес получателя
SendTo$="**@****.***.ua"
' имя сканируемого файла
FileName$="c:\scandoc.bmp"
Dim db As New NotesDatabase( "", "" )
Dim memo As NotesDocument
Dim rt As NotesRichTextItem
Dim o As NotesEmbeddedObject
Call TWAIN_AcquireToFilename(0,FileName$)
Call db.OpenMail
Set memo= New NotesDocument( db )
memo.Form="Memo"
memo.SendTo = SendTo$
memo.Subject = "новый отсканированный документ"
Set rt = New NotesRichTextItem( memo, "Body" )
Set o = rt.EmbedObject ( EMBED_ATTACHMENT, "", FileName$)
Call memo.Send( False )
End SubБиблиотека и представленные примеры находятся в архиве. ScanEZTWLotusNotes.zip 31KbДля использования в своем коде заимпортируйте или скопируйте код из текстовых файлов. |