VintaSoft Twain .NET SDK 15.2: Руководство для .NET разработчика
В этом разделе
    Диспетчер устройств eSCL
    В этом разделе
    eSCL - это протокол сканирования изображений без драйверов, разработанный Mopria Alliance, и представляет RESTful-интерфейс для сканеров изображений, разработанный для упрощения сканирования изображений на стороне клиента, требуя только указания намерения.

    VintaSoft TWAIN .NET SDK предоставляет диспетчер устройств eSCL, который обеспечивает доступ к устройствам eSCL.

    Для работы с диспетчером устройств eSCL необходимо создать экземпляр класса EsclDeviceManager.

    Вот пример, демонстрирующий, как открыть диспетчер устройств eSCL и отобразить информацию обо всех доступных устройствах eSCL:
    /// <summary>
    /// Opens eSCL device manager and displays information about available local eSCL image scanners.
    /// </summary>
    void GetEsclDevicesInfo()
    {
        // create eSCL device manager
        using (Vintasoft.EsclImageScanning.EsclDeviceManager deviceManager = new Vintasoft.EsclImageScanning.EsclDeviceManager())
        {
            // open device manager
            deviceManager.Open();
    
            System.DateTime startTime = System.DateTime.Now;
            // while eSCL devices are not found
            while (deviceManager.Devices.Count == 0 && System.DateTime.Now.Subtract(startTime).Microseconds < 5000)
            {
                System.Threading.Thread.Sleep(10);
            }
            // get count of eSCL devices
            int deviceCount = deviceManager.Devices.Count;
            if (deviceCount == 0)
            {
                System.Console.WriteLine("Devices are not found.");
                return;
            }
    
            Vintasoft.EsclImageScanning.EsclDeviceCollection devices = deviceManager.Devices;
            // for each eSCL device
            for (int i = 0; i < devices.Count; i++)
            {
                // output the device name
                System.Console.WriteLine(string.Format("Device '{0}'", devices[i].Name));
            }
        }
    }
    
    ''' <summary>
    ''' Opens eSCL device manager and displays information about available local eSCL image scanners.
    ''' </summary>
    Private Sub GetEsclDevicesInfo()
            ' create eSCL device manager
            Using deviceManager As New Vintasoft.EsclImageScanning.EsclDeviceManager()
                    ' open device manager
                    deviceManager.Open()
    
                    Dim startTime As System.DateTime = System.DateTime.Now
                    ' while eSCL devices are not found
                    While deviceManager.Devices.Count = 0 AndAlso System.DateTime.Now.Subtract(startTime).Microseconds < 5000
                            System.Threading.Thread.Sleep(10)
                    End While
                    ' get count of eSCL devices
                    Dim deviceCount As Integer = deviceManager.Devices.Count
                    If deviceCount = 0 Then
                            System.Console.WriteLine("Devices are not found.")
                            Return
                    End If
    
                    Dim devices As Vintasoft.EsclImageScanning.EsclDeviceCollection = deviceManager.Devices
                    ' for each eSCL device
                    For i As Integer = 0 To devices.Count - 1
                            ' output the device name
                            System.Console.WriteLine(String.Format("Device '{0}'", devices(i).Name))
                    Next
            End Using
    End Sub