Captures a device independent bitmap.
Syntax
Visual Basic (Declaration) | |
---|
Public Overridable Function CaptureDIB() As IntPtr |
Visual Basic (Usage) | Copy Code |
---|
Dim instance As CaptureCtrl
Dim value As IntPtr
value = instance.CaptureDIB() |
C# | |
---|
public virtual IntPtr CaptureDIB() |
C++/CLI | |
---|
public:
virtual IntPtr CaptureDIB(); |
Return Value
System.IntPtr
Example
Visual Basic | Copy Code |
---|
Public _form As CaptureCtrlForm = New CaptureCtrlForm()
Public _capturectrl As CaptureCtrl = Nothing
Public _result As Boolean = False
Private _dibFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_CaptureDIBExample.dib")
Public Sub CaptureDIBExample()
' reference the capture control
_capturectrl = _form.CaptureCtrl
Try
' select a video capture device
If _capturectrl.VideoDevices("USB") Is Nothing Then
Throw New Exception("No USB video device available")
End If
_capturectrl.VideoDevices("USB").Selected = True
' set a video compressor for the capture file
_capturectrl.VideoCompressors.Mpeg4.Selected = True
' set still delay
_capturectrl.CaptureStillDelay = 1000
' capture DIB
Dim DIB As IntPtr = _capturectrl.CaptureDIB()
' check for the captured DIB handle
If (DIB <> Nothing) Then
_result = True
End If
' free allocated global memory
Marshal.FreeHGlobal(DIB)
Catch e1 As Exception
_result = False
End Try
End Sub
Public NotInheritable Class LEAD_VARS
Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 17\Media"
End Class |
C# | Copy Code |
---|
public bool _result = false;
public CaptureCtrlForm _form = new CaptureCtrlForm();
public void CaptureDIBExample()
{
// reference the capture control
CaptureCtrl capturectrl = _form.CaptureCtrl;
try
{
// set the video capture device, use your capture device name here
if (capturectrl.VideoDevices["Logitech"] == null)
throw new Exception("No Logitech video device available");
capturectrl.VideoDevices["Logitech"].Selected = true;
// let's set a delay of 1 second to insure that some capture devices
// have time to adjust their gain
capturectrl.CaptureStillDelay = 1000;
// capture device independent bitmap
IntPtr dib = capturectrl.CaptureDIB();
_result = (dib != null);
//free allocated global memory
Marshal.FreeHGlobal(dib);
}
catch (COMException)
{
_result = false;
}
catch (Exception)
{
_result = false;
}
} |
Remarks
Requirements
Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7
See Also