我正在使用API uEye相机进行应用,我无法启动相机。
我第一次运行我的应用程序(在Debug中使用Visual Studio)应用程序运行正常,相机已打开。我还在开发,然后我多次跑步和退出。但经过一些测试(有时是1次,有时是10次),相机无法启动。我不得不退出视觉工作室并重新打开以使相机运行。
我的init代码:
uEye.Camera _cam;
_cam = new uEye.Camera();
if (_cam != null)
{
_cam.Exit();
}
uEye.Defines.Status statusRet = 0;
_cam.EventDeviceRemove += EventDeviceRemove;
statusRet = _cam.Init(DeviceNumber | (int)uEye.Defines.DeviceEnumeration.UseDeviceID, 0);
if (statusRet != uEye.Defines.Status.Success)
throw new Exception("Camera initializing failed. init return " + (int)statusRet);
当相机没有运行时,我有statusRet == uEye.Defines.Status.CANT_OPEN_DEVICE
。
每次都能正确启动相机怎么办?
编辑:
我的Stop
方法在应用程序关闭时调用:
public void Stop()
{
_cam.EventFrame -= NewFrameArrived;
_cam.Acquisition.Stop(uEye.Defines.DeviceParameter.Wait);
}
public void Dispose()
{
if (_cam != null)
{
_cam.Exit();
_cam = null;
}
}