ERLEDIGT
JA
JA
ANTWORTEN
6
6
ZUGRIFFE
2380
2380
EMPFEHLEN
-
Hallo Community,
ich habe es endlich geschafft die TV Karte anzusprechen. Eigentlich ganz easy. Funktioniert auch alles. Nur jetzt wollte ich eine Liste machen, wo ich das Eingangssignal auswähle(Tuner, Composite, S-Video, etc.). Die Liste ist auch schon fertig und es werden die möglichen Eingänge ausgelesen. Jetzt wollte ich das so machen, dass man das Eingangssignal aus der Liste auswählen kann. Nur es kommt beim Klicken auf den Preview-Button immer ein Fehler:
ArgumentOutOfRangeException was unhandled
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Hier der Code des Buttons:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14
int m = 0; int n = 0; if (videodeviceselector.geräteliste.SelectedItems.Count > 0) { m = videodeviceselector.geräteliste.SelectedItems[0].Index; } else { m = 0; } Filter videoDevice = filters.VideoInputDevices[m]; Filter audioDevice = null; capture = new Capture(videoDevice, audioDevice); if (videodeviceselector.sourceliste.SelectedItems.Count > 0) { capture.VideoSource = capture.VideoSources[videodeviceselector.sourceliste.SelectedItems[0].Index]; } else { capture.VideoSource = capture.VideoSources[0]; } capture.PreviewWindow = videoPanel;
Weiß jemand wodran es liegen könnte?
Gruß
Fast Fred
-
Debugger schon mal verwendet?
Entweder gibt es kein SelectedItem oder keine VideoSource.
-
Hi Fast Fred!
Welche Frameworkversion verwendest denn?
Und was verwendest als DirectX Wrapper, die Solution von TheCodeProject?
Und zu guter letzt, in welcher Zeile tritt denn der Fehler auf?
Schon mal was von Try-Catch gehört? Wenn nicht, geleich mal das Sticky im .NET Café angucken.
Debugge dann das Ganze mal bis zu der entsprechenden Zeile und schau mal nach
ob überhaupt genügend Elemente in der Collection drinn waren die die Ausnahme geworfen hat.MfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
Ich baue mir das aus dem TheCodeProject-Projekt zusammen mit Framework 2.0.
Ich habe das mal mit try-catch gemacht und dann hat er mir fast das selbe wie beim Debugger ausgespuckt(siehe angehängte Grafik).
Und das ist der auslöser für den Fehler:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14
int m = 0; int n = 0; if (videodeviceselector.geräteliste.SelectedItems.Count > 0) { m = videodeviceselector.geräteliste.SelectedItems[0].Index; } else { m = 0; } Filter videoDevice = filters.VideoInputDevices[m]; Filter audioDevice = null; capture = new Capture(videoDevice, audioDevice); if (videodeviceselector.sourceliste.SelectedItems.Count > 0) { [B]capture.VideoSource = capture.VideoSources[videodeviceselector.sourceliste.SelectedItems[0].Index][/B]; } else { capture.VideoSource = capture.VideoSources[0]; } capture.PreviewWindow = videoPanel;
-
In deinen capture.VideoSources gibt also kein Objekt an dem angegeben Index
(sourceliste.SelectedItems[0].Index)
Musst halt schauen, dass der richtige Index vorhanden ist...MfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
mhhh....das stimmt. Nur wenn ich mal testweise anstatt
sage:Code :1
[B]capture.VideoSource = capture.VideoSources[videodeviceselector.sourceliste.SelectedItems[0].Index];[/B]
Code :1
[B]capture.VideoSource = capture.VideoSources[0];[/B]
kommt genau der selbe Fehler. Oder bin ich jetzt gnaz falsch
Gruß
Fast Fred
-
Ich habe den Fehler gefunden!
Und zwar dürfen
undCode :1
capture = new Capture(videoDevice, audioDevice);
Code :1
capture.VideoSource = capture.VideoSources[0];
nicht in einem Void sein! Habe das getrennt gemacht. Zum testen einfach mal
in den Form1_Load Void und den anderen Code in den Button-Void. Und siehe da - es hat geklappt.Code :1
capture = new Capture(videoDevice, audioDevice);
Trotzdem vielen Dank für eure Bemühungen
.
Gruß
Fast Fred
Ähnliche Themen
-
Kompilier Fehler - bin ratlos [Source]
Von kingkicker8 im Forum C/C++Antworten: 3Letzter Beitrag: 26.01.08, 16:09 -
Video Capture
Von micky91 im Forum Videoschnitt, Videotechnik & -produktionAntworten: 5Letzter Beitrag: 23.08.07, 01:39 -
Capture the soul
Von parisienne im Forum Sonstige 3D-ProgrammeAntworten: 0Letzter Beitrag: 19.10.06, 15:57 -
Motion Capture?
Von PP INTERACTIV im Forum 3D Studio MaxAntworten: 4Letzter Beitrag: 17.08.06, 13:42 -
Problem mit dv capture
Von vanHalen im Forum Videoschnitt, Videotechnik & -produktionAntworten: 3Letzter Beitrag: 10.08.04, 11:57





Zitieren
Login





