一、问题描述:
运行程序时出现,System.NullReferenceException:“未将对象引用设置到对象的实例。
二、问题分析
代码VideoCaptureDevice videoSource = new VideoCaptureDevice(videoDevices[tscbxCameras.SelectedIndex].MonikerString)出现未将对象引用设置到对象的实例。如下图所示:
原因是 FilterInfoCollection videoDevices = null引起,需要用new初始化对象
三、解决措施
FilterInfoCollection videoDevices = null修改为
FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);
修改后程序运行正常,问题得到解决。
四、总结
引起System.NullReferenceException:“未将对象引用设置到对象的实例的原因如下所示:
1、ViewState 对象为Null。
2、DateSet 空。
3、sql语句或Datebase的原因导致DataReader空。
4、声明字符串变量时未赋空值就应用变量。
5、未用new初始化对象。
6、Session对象为空。
7、对控件赋文本值时,值不存在。
8、使用Request.QueryString()时,所获取的对象不存在,或在值为空时未赋初始值。
9、使用FindControl时,控件不存在却没有做预处理。
10、重复定义造成未将对象引用设置到对象的实例错误。