Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  c# late binding GetCoordinates Fehler

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  c# late binding GetCoordinates Fehler (1293 mal gelesen)
apo77
Mitglied


Sehen Sie sich das Profil von apo77 an!   Senden Sie eine Private Message an apo77  Schreiben Sie einen Gästebucheintrag für apo77

Beiträge: 3
Registriert: 14.08.2012

erstellt am: 14. Aug. 2012 09:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo @all,

ich bin gerade dabei etwas mit c# und late binding zu experimentieren. Folgender Code soll Punkte selektieren und
Koordinaten auslesen. Selektion funktioniert soweit, jedoch kann ich die Koordinaten nicht auslesen. Innerhalb von Catia über VBS funktioniert das problemlos.


Code:

object Selection = lb_get(doc, "Selection");
lb_method(Selection,"Clear");
lb_method(Selection,"Search",new object[]{"(((((FreeStyle.Point + Sketcher.Point) + Drafting.Point) + 'Part Design'.Point) + 'Generative Shape Design'.Point) & Name=*),all"});

object item1 = lb_method(Selection,"Item2",new object[]{1});

object point = lb_get(item1,"Value");
object[] coord = new object[3];

//// Das geht nicht:

lb_method(point,"GetCoordinates",coord);

////

public object lb_method(object ob, string command, object[] param)
{
   return ob.GetType().InvokeMember(command, BindingFlags.InvokeMethod | BindingFlags.OptionalParamBinding, null, ob, param);
}

public object lb_get(object ob, string command, object[] param)
{
            return ob.GetType().InvokeMember(command, BindingFlags.GetProperty, null, ob, param);
}

public object lb_get(object ob, string command)
{
    return lb_get(ob,command,new object[]{});
}



Fehlermeldung die dabei kommt ist nicht sehr aussagekräftig:

StandardError: Ein Aufrufziel hat einen Ausnahmefehler verursacht.

Hat jemand Idee woran das liegen kann? BTW: gibt es Möglichkeiten etwas mehr über die Ausnahmefehler die auftreten zu erfahren?

Gruß
Alexander

[Diese Nachricht wurde von apo77 am 14. Aug. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

apo77
Mitglied


Sehen Sie sich das Profil von apo77 an!   Senden Sie eine Private Message an apo77  Schreiben Sie einen Gästebucheintrag für apo77

Beiträge: 3
Registriert: 14.08.2012

erstellt am: 14. Aug. 2012 15:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

angeblich soll array

Code:

object[] coord = new object[3];

falsche Anzahl Parameter haben :-( . Nur warum?

[Diese Nachricht wurde von apo77 am 14. Aug. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

apo77
Mitglied


Sehen Sie sich das Profil von apo77 an!   Senden Sie eine Private Message an apo77  Schreiben Sie einen Gästebucheintrag für apo77

Beiträge: 3
Registriert: 14.08.2012

erstellt am: 14. Aug. 2012 16:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Problem ist gelöst.

Code:

object[] coord = new object[3];
lb_method(point,"GetCoordinates",new object[]{coord});


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz