| | |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
|
Autor
|
Thema: Pro/E und J-Link: seltsames Verhalten bekannt?! (147 mal gelesen)
|
magic_halli Mitglied
 
 Beiträge: 361 Registriert: 03.07.2006 WF2 M210 / WF3 M110 Linux Fedora C4 WinXP Pro Java 1.6.0_06
|
erstellt am: 15. Aug. 2006 12:18 <-- editieren / zitieren --> Unities abgeben:         
Hallo, mir ist ein etwas seltsames Verhalten von ProE in Verbindung mit J-Link aufgefallen, was ich mir nicht erklären kann. Vielleicht hat das auch schonmal jemand beobachtet oder weiß einen Rat... einfaches Bsp.: Ich habe eine for-Schleife, in der irgend etwas passieren soll, z.B. Ausgabe einer Meldung, falls die geöffnetet Datei eine prt-Datei ist.
Code:
Session curSession = pfcGlobal.GetProESession(); Model model = curSession.GetCurrentModel()if(Model eine prt-Datei){ //Bildschirmausgabe, das es sich um eine prt-Datei handelt } else{ //Fehlermeldung o.ä. }
In dieser einfachen Form erhalte ich die Bildschirmausgabe.Jetzt ist mir schon öfters aufgefallen: wenn ich eine einfache Variablendeklaration am Anfang einfüge, welche allerdings NICHT(!) vom Programm verwendet wird, die Bildschirmausgabe nicht mehr erfolgt bzw. in den else-Zweig bei der Programmabarbeitung gesprungen wird!?!?! einfaches Bsp. hierzu:
Code:
Session curSession = pfcGlobal.GetProESession(); Model model = curSession.GetCurrentModel(); Assembly asm = (Assembly)model;if(Model eine prt-Datei){ //Bildschirmausgabe, das es sich um eine prt-Datei handelt } else{ //Fehlermeldung o.ä. }
Schon allein die Anwesenheit der neuen Zeile (fett, kursiv geschrieben) reicht und das Programm geht in den else-Zweig!Ist sowas ähnliches vielleicht schonmal jemand passiert oder was kann das sein??? Ist das vielleicht ein Bug von ProE in Verbindung mit J-Link Programmen? Gruß Rico. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
GüntherP Mitglied CAD Administrator / Konstrukteur

 Beiträge: 82 Registriert: 18.02.2005 HP xw4100 NVIDIA Quadro 980XGL<P>Wildfire 2.0 / 3.0 Intralink 3.4 F000 PDMLink 8.0 M030
|
erstellt am: 15. Aug. 2006 12:58 <-- editieren / zitieren --> Unities abgeben:          Nur für magic_halli
Hallo, ich habe in Erinnerung, dass wenn man z.B ein Drawing Modell, so wie du es machst, auf ein Assembly Modell casted, eine Exception geworfen wird. Ich verstehe nicht ganz, warum du ein Modell, von dem du den Modelltyp nicht kennst, einfach auf ein Assembly Modell castest. Ich würde es so bevorzugen.... Code:
if (model.GetType() == ModelType.MDL_ASSEMBLY) { Assembly asm = (Assembly)model; // weitere Bearbeitung der Assembly }
Gruß, Günther Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
magic_halli Mitglied
 
 Beiträge: 361 Registriert: 03.07.2006 WF2 M210 / WF3 M110 Linux Fedora C4 WinXP Pro Java 1.6.0_06
|
erstellt am: 15. Aug. 2006 14:37 <-- editieren / zitieren --> Unities abgeben:         
...ja, stimmt! Ich caste nun mein Model erst, nachdem der Typ bekannt ist. Die gesamte Deklaration erfolgt nun auch erst nach "Bekanntmachung" des Models - und siehe da, schon ist das Verhalten "normal" bzw. wie erwartet Naja, das sind eben so die Dinge, die es noch für mich zu lernen bzw. zu verinnerlichen gilt Danke, Rico. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |