Работа со сканером напрямую из Lotus Notes

Тема в разделе "Работа с API", создана пользователем morpheus, 22 янв 2008.

  1. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Работа со сканером напрямую из Lotus Notes c помощью бесплатной библиотеки EZTW32.DLL

    Помещаем библиотеку в директорию приложений Lotus (по умолчанию X:\Lotus\Notes)

    Создаем агента или кнопку.

    Декларируем функции из библиотеки
    Код (Text):
    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 TWAIN_AcquireNative Lib_
    "EZTW32.DLL" (Byval hWndApp%, Byval wPixTypes%) As Integer
    Declare Function TWAIN_AcquireToClipboard 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: Сканирование образа в текущий документ
    Код (Text):
    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: Сканирование образа и отправка по почте с присоедененным файлом
    Код (Text):
    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
     
Загрузка...

Поделиться этой страницей