video ve görüntüleme şeyler AForge denemeye karar verdikten sonra, ben this simple demo uygulamaya çalışmıştır:Bir PictureBox'u güncellerken ArgumentException neden olabilir?
private void Main_Load(object sender, EventArgs e)
{
// enumerate video devices
FilterInfoCollection videoDevices = new FilterInfoCollection(
FilterCategory.VideoInputDevice);
// create video source
VideoCaptureDevice videoSource = new VideoCaptureDevice(
videoDevices[0].MonikerString);
// set NewFrame event handler
videoSource.NewFrame += new NewFrameEventHandler(video_NewFrame);
// start the video source
videoSource.Start();
}
private void video_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
this.pictureBox1.Image = eventArgs.Frame;
}
sorun hep bir ArgumentException
olsun yani, gerçi her zaman hemen gerçekleşmez. Bu Application.Run(new Main());
tarafında açılan, ancak stacktrace üst şuna benzer:
at System.Drawing.Image.get_Width() at System.Drawing.Image.get_Size()
at System.Windows.Forms.PictureBox.ImageRectangleFromSizeMode(PictureBoxSizeMode mode)
at System.Windows.Forms.PictureBox.OnPaint(PaintEventArgs pe)
bu alakalı olup olmadığından emin, ama ParamName
nitelik değil istisna null. Görüntü atamalarını bir try ... catch bloğunda sarmalamayı denedim, ancak bu yardımcı olmadı. Ayrıca, görüntünün atanmadan önce null olmadığından emin olmak için kontrol ettim. Ayrıca null olmayan, ancak 0x0 boyutlu görüntüler için kontrol ettik.
Neyi yanlış yaptım? Birisi geçici bir çözüm önerebilir mi?
İstisnadaki mesaj nedir? –
@DavidNelson iyi soru: "Parametre geçerli değil." –
Bunu ayarladığınızda eventArgs.Frame Yüksekliği ve Genişliği nedir? –