VintaSoft Imaging .NET SDK 14.0: Документация для .NET разработчика
Vintasoft.Imaging.Media Namespace / ImageCaptureDevicesMonitor Class
Члены типа Объект Синтаксис Example Иерархия Требования Смотрите также
В этом разделе
    Класс ImageCaptureDevicesMonitor
    В этом разделе
    Отслеживает устройства захвата изображения, доступные в системе.
    Объектная модель
    ImageCaptureDevicesMonitor
    Синтаксис
    'Declaration
    
    Public Class ImageCaptureDevicesMonitor
    
    
    public class ImageCaptureDevicesMonitor
    
    
    public __gc class ImageCaptureDevicesMonitor
    
    
    public ref class ImageCaptureDevicesMonitor
    
    
    Пример

    Вот C#/VB.NET код, который демонстрирует, как отслеживать удаленные/добавленные камеры в системе:

    
    Class ImageCaptureDeviceMonitor_Example
        Public Shared Sub Test()
            ' create monitor
            Dim monitor As New Vintasoft.Imaging.Media.ImageCaptureDevicesMonitor()
            AddHandler monitor.CaptureDevicesChanged, New System.EventHandler(Of Vintasoft.Imaging.Media.ImageCaptureDevicesChangedEventArgs)(AddressOf monitor_CaptureDevicesChanged)
            monitor.Timeout = 500
    
            ' show information about available devices
            Dim availableDevices As System.Collections.ObjectModel.ReadOnlyCollection(Of Vintasoft.Imaging.Media.ImageCaptureDevice) = Vintasoft.Imaging.Media.ImageCaptureDeviceConfiguration.GetCaptureDevices()
            If availableDevices.Count > 0 Then
                System.Console.WriteLine("Available devices:")
                For Each device As Vintasoft.Imaging.Media.ImageCaptureDevice In availableDevices
                    System.Console.WriteLine(device.FriendlyName)
                Next
            Else
                System.Console.WriteLine("No connected devices.")
            End If
    
            ' start monitoring
            monitor.Start()
            System.Console.WriteLine("Monitoring started.")
    
            ' wait while any key pressed
            System.Console.ReadKey()
    
            ' stop monitoring
            monitor.[Stop]()
        End Sub
    
        Private Shared Sub monitor_CaptureDevicesChanged(sender As Object, e As Vintasoft.Imaging.Media.ImageCaptureDevicesChangedEventArgs)
            For Each device As Vintasoft.Imaging.Media.ImageCaptureDevice In e.AddedDevices
                System.Console.WriteLine("Device '{0}' connected.", device.FriendlyName)
            Next
    
            For Each device As Vintasoft.Imaging.Media.ImageCaptureDevice In e.RemovedDevices
                System.Console.WriteLine("Device '{0}' disconnected.", device.FriendlyName)
            Next
        End Sub
    End Class
    
    
    
    class ImageCaptureDeviceMonitor_Example
    {
        public static void Test()
        {
            // create monitor
            Vintasoft.Imaging.Media.ImageCaptureDevicesMonitor monitor = 
                new Vintasoft.Imaging.Media.ImageCaptureDevicesMonitor();
            monitor.CaptureDevicesChanged += 
                new System.EventHandler<Vintasoft.Imaging.Media.ImageCaptureDevicesChangedEventArgs>(monitor_CaptureDevicesChanged);
            monitor.Timeout = 500;
    
            // show information about available devices
            System.Collections.ObjectModel.ReadOnlyCollection<Vintasoft.Imaging.Media.ImageCaptureDevice> availableDevices = 
                Vintasoft.Imaging.Media.ImageCaptureDeviceConfiguration.GetCaptureDevices();
            if (availableDevices.Count > 0)
            {
                System.Console.WriteLine("Available devices:");
                foreach (Vintasoft.Imaging.Media.ImageCaptureDevice device in availableDevices)
                    System.Console.WriteLine(device.FriendlyName);
            }
            else
            {
                System.Console.WriteLine("No connected devices.");
            }
    
            // start monitoring
            monitor.Start();
            System.Console.WriteLine("Monitoring started.");
    
            // wait while any key pressed
            System.Console.ReadKey();
    
            // stop monitoring
            monitor.Stop();
        }
    
        static void monitor_CaptureDevicesChanged(object sender, Vintasoft.Imaging.Media.ImageCaptureDevicesChangedEventArgs e)
        {
            foreach (Vintasoft.Imaging.Media.ImageCaptureDevice device in e.AddedDevices)
                System.Console.WriteLine("Device '{0}' connected.", device.FriendlyName);
    
            foreach (Vintasoft.Imaging.Media.ImageCaptureDevice device in e.RemovedDevices)
                System.Console.WriteLine("Device '{0}' disconnected.", device.FriendlyName);
        }
    }
    
    

    Иерархия наследования

    System.Object
       Vintasoft.Imaging.Media.ImageCaptureDevicesMonitor

    Требования

    Целевые платформы: .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5

    Смотрите также