Ausnahmefehler mscorlib

K

kalle123456

Hallo,

ich arbeite mich gerade in C# ein und schon habe ich das erste Problem :rolleyes: .
Wenn ich Late.Invoke(oDocument, "Broadcast", "start"); aufrufe bekomme ich eine Exception Ausnahmefehler Fehler in mscorlib. Trotzdem wird die Funktion ausgeführt und der Fehler kommt auch nicht immer. Kann es am Timeout liegen, weil die Funktion braucht eine Weile bis der Broadcast startet? Wenn ja wie kann ich das ändern?

Hier der entsprechende Code
Code:
private void button2_Click(object sender, EventArgs e)
        {
            object oWirecast = GetWirecast();
            object oDocument = Late.Invoke(oWirecast, "DocumentByIndex", 1);

            int isBroadcasting = (int)Late.Invoke(oDocument, "IsBroadcasting");
            if (isBroadcasting != 1)
            {
               try
               {
                   Late.Invoke(oDocument, "Broadcast", "start");
                   MessageBox.Show(isBroadcasting.ToString());
               }
               catch (Exception theException)
               {
                   String errorMessage;
                   errorMessage = "Error: ";
                   errorMessage = String.Concat(errorMessage, theException.Message);
                   errorMessage = String.Concat(errorMessage, " Line: ");
                   errorMessage = String.Concat(errorMessage, theException.Source);

                   MessageBox.Show(errorMessage, "Error");
               }
            }
        }

hier noch die statische Methode der Klasse Late

Code:
public static object Invoke(object obj,string sProperty,object oValue)
{
  object[] oParam=new object[1];
 oParam[0]=oValue;
 return obj.GetType().InvokeMember(sProperty,BindingFlags.InvokeMethod, null, obj, oParam );
}

und noch das Debugfenster
Eine Ausnahme (erste Chance) des Typs "System.Reflection.TargetInvocationException" ist in mscorlib.dll aufgetreten.
Der Thread '<Kein Name>' (0xd10) hat mit Code 0 (0x0) geendet.
Der Thread 0xeb8 hat mit Code 0 (0x0) geendet.
Das Programm "[1196] WirecastCSharp.vshost.exe: Verwaltet" wurde mit Code 0 (0x0) beendet.
Gruss
 
Zuletzt bearbeitet von einem Moderator:
Hey,

InnerException sagt das selbe, im Prinzip will ich damit die Software Wirecast steuern, sprich einen eigenen Scheduler bauen, da der Broadcast über eine dsl leitung geht die Zwangstrennung hat. Für wirecast gibt es ein SDK habe es mal hochgeladen.


hier noch das Testprojekt ;)
Gruss
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

hier mal die InnerException. Manchmal kommt das

Error: System.BadImageFormatException: Unzulässiger Zugriff auf einen Speicherbereich. (Ausnahme von HRESULT: 0x800703E6) Line: mscorlib

oder das
Error: System.OutOfMemoryException: Nicht genügend Speicher verfügbar, um das Programm weiter auszuführen. Line: mscorlib

oder ebend garnichts und alles läuft fehlerfrei.
 
So wies ausschaut reicht dein Arbeitsspeicher nicht.
Entweder der ist allgemein zu klein oder irgendwo werden Objekte nicht wieder freigegeben und der Müllt sich so voll.

Edit:
Hast du schonmal versucht die DLL von Wirecast direkt als Referenz/Verweis zu setzen.
Ev. kannst du damit dann (es wird eine Interop DLL (Wrapper) erstellt) direkt auf die Objekte zugreifen.

BadImageFormatException:
Diese Ausnahme wird ausgelöst, wenn das Dateiabbild eines ausführbaren Programms ungültig ist. Diese Ausnahme wird z. B. ausgelöst, wenn nicht verwalteter Code zum Laden an Load übergeben wird.
http://msdn.microsoft.com/de-de/library/system.badimageformatexception.aspx
 
Zuletzt bearbeitet:
Hallo,

also Arbeitsspeicher ist 1GB Ram, aber das er sich zumüllt kann durchaus sein. Ich habe mich nur an den SDK gehalten, der Rest funktioniert ja auch so. Werde es mal probieren mit der Interop DLL.

Gruss
 
Zurück