| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: run_journal verweigert Ausführung (2900 mal gelesen)
|
FL.Bz Mitglied -
Beiträge: 22 Registriert: 03.04.2014 -
|
erstellt am: 14. Mai. 2014 14:21 <-- editieren / zitieren --> Unities abgeben:
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 15. Mai. 2014 07:40 <-- editieren / zitieren --> Unities abgeben: Nur für FL.Bz
|
FL.Bz Mitglied -
Beiträge: 22 Registriert: 03.04.2014 -
|
erstellt am: 15. Mai. 2014 08:08 <-- editieren / zitieren --> Unities abgeben:
Nun ja, ein anderes Skript von uns funktioniert "von außen" tadellos. Dieses macht EXAKT das Gleiche, der Unterschied ist nur, dass die BG nicht über TC, sondern lokal geladen wird. Soo holzig kann der Weg also nicht sein ------------------ - Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gfx-toxic.de Moderator Konstruktion / Anwenderbetreuung
Beiträge: 501 Registriert: 09.06.2006 Teamcenter 11.3 / NX 11 Windows 10
|
erstellt am: 15. Mai. 2014 08:30 <-- editieren / zitieren --> Unities abgeben: Nur für FL.Bz
|
FL.Bz Mitglied -
Beiträge: 22 Registriert: 03.04.2014 -
|
erstellt am: 15. Mai. 2014 08:47 <-- editieren / zitieren --> Unities abgeben:
|
gfx-toxic.de Moderator Konstruktion / Anwenderbetreuung
Beiträge: 501 Registriert: 09.06.2006 Teamcenter 11.3 / NX 11 Windows 10
|
erstellt am: 15. Mai. 2014 08:48 <-- editieren / zitieren --> Unities abgeben: Nur für FL.Bz
Ich würde es eh nicht über run_journal.exe machen, sondern über einen USER_EXIT von NX. Dann bist du nämlich wirklich sicher das NX gestartet ist, und NX führt das Journal bzw. deine dll sauber aus. Möglich wäre das ganze auch noch über run_mamanged.exe Siehe hierfür die Doku... Zitat:
NX Open for .NET batch programs are standalone executables that you can run from the operating system, outside of NX. Batch applications must be .exe files.Typically .NET batch applications should have the following entry point: public static void Main(string[] args) However, Visual Studio will allow you to set any method as the applications entry point by setting the Entry Point property found under Project Properties → Linker → Advanced. If you used visual studio for creating batch applications, make sure your project is created as an console application. Running a Batch Application An NX Open application .exe file can be executed directly from a command line as any other executable. Since this is a managed application, you will need to do one of the following: Copy the NX .NET libraries to your local working directory. To do so, copy all of the libraries from the %UGII_ROOT_DIR%\managed directory to your working directory. Use standard operating system command to execute the application. Copy your .EXE to UGII_ROOT_DIR\managed. Use standard operating system command to execute the application. Use run_managed.exe (%UGII_ROOT_DIR%\run_managed.exe) run_managed run_managed is a standalone executable that runs a managed NXOpen .EXE in the correct environment allowing it to pick up other DLLs from the install when they are not in the same directory as the .EXE itself. usage: run_managed <executable-file> <arguments>
Eine Verbindung zu TC stellst du dann im Code her... TheUFSession.Ugmgr.Initialize(); Dann läuft NX komplett ohne GUI
[Diese Nachricht wurde von gfx-toxic.de am 15. Mai. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
FL.Bz Mitglied -
Beiträge: 22 Registriert: 03.04.2014 -
|
erstellt am: 15. Mai. 2014 09:13 <-- editieren / zitieren --> Unities abgeben:
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 15. Mai. 2014 14:03 <-- editieren / zitieren --> Unities abgeben: Nur für FL.Bz
Nochmal, auch wenn Du's nicht glauben willst: Du bist auf dem Holzweg. run_journal ist eine, von laufenden NX-Prozessen unabhängige, externe Anwendung. In einer laufenden Session hat die nichts zu suchen, es sei denn, Du willst aus NX heraus einen zusätzlichen, externen Prozess starten. Der kümmert sich aber nicht um die laufende Session, sondern macht sich ggfs. eine neue, ohne GUI auf. Und das hilft hier nicht weiter, zudem auch run_journal erst mal aus NX gestarted werden müsste, da beisst sich die Katze in den Schwanz. Zitat: ... weil dein Vorposter gemeint hat, journal´s von außen zu starten sei problematisch...
Problematisch ist es nur, wenn man die Unterschiede intern/extern nicht beachtet. ;) Zitat: ... nur müssen wir halt in NX run-journal klicken ...
run_journal und der interne Aufruf eines Journals (Tools->Journal-> ...) sind zwei Paar Stiefel, eins für drinnen und eins für draussen. Alternativen gibt's via kompilierte Anwendung im Startup oder mit vorangestellten Makro. Wenn Du unbedingt bei run_journal bleiben willst, dann viel Spass beim Kampf gegen die Windmühlen. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
FL.Bz Mitglied -
Beiträge: 22 Registriert: 03.04.2014 -
|
erstellt am: 15. Mai. 2014 14:15 <-- editieren / zitieren --> Unities abgeben:
Das mit den Windmühlen lass ich dann wohl lieber, auch wenn ich früher erfolgreich als Windmaschine gearbeitet habe. Über Makro habe ich es schon versucht, das ist jedoch leider ziemlich besch...issen gelöst, vielleicht setze ich dort aber nochmal an. Was meinst du mit "Kompilierte Anwendung im Startup" ? Das hört sich gut an, denn: Ich brauche "nur" etwas, das mir mein Journal IN DER NX GUI (GESTARTET VON TC) ausführt. Leider scheint run_journal wie du schon sagtest nicht der richtige Weg bzw. ein sehr hölzerner zu sein... ------------------ mit ugraf.exe key fad\macro.macro klappt es so, wie ich es will, nur eben in einer neuen Instanz. Wie bekomme ich es hin, dass die richtige (schon offene) Ugraf.exe verwendet wird? [Diese Nachricht wurde von FL.Bz am 15. Mai. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Big King Ehrenmitglied NX/Tc Admin
Beiträge: 1887 Registriert: 06.12.2010
|
erstellt am: 16. Mai. 2014 08:38 <-- editieren / zitieren --> Unities abgeben: Nur für FL.Bz
Hallo FL.Bz bis jetzt hast du noch nicht gesagt für was du die Zeitmessung genau benötigst? Das wäre vielleicht auch interessant. Vielelicht kommen dann noch andere Vorschläge wie man dies tun kann. gruess
------------------ “Vision without action is a daydream. Action without vision is a nightmare.” Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
FL.Bz Mitglied -
Beiträge: 22 Registriert: 03.04.2014 -
|
erstellt am: 16. Mai. 2014 08:56 <-- editieren / zitieren --> Unities abgeben:
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 16. Mai. 2014 10:27 <-- editieren / zitieren --> Unities abgeben: Nur für FL.Bz
Zitat: Original erstellt von FL.Bz: [QUOTE]Über Makro habe ich es schon versucht, das ist jedoch leider ziemlich besch...issen gelöst
Das Makro muss lediglich das Journal starten, nicht den kompletten Job ausführen. Also Aufzeichnung starten, per JournalManager ein (einfaches) Journal starten, Aufzeichnung beenden. Dieses Makro editieren und NX beim Start mitgeben. Folge: Batch startet NX, NX startet Makro, Makro startet Journal. Was meinst du mit "Kompilierte Anwendung im Startup" ? [/QUOTE] Hast Du eine Entwicklerlizenz ? Damit gibt's die Möglichkeit, NX beim Start beliebige Programme ausführen zu lassen. Voraussetzungen: kompilierte Anwendung, also dll oder exe. passenden Einstiegspunkt namens Startup. Das Programm liegt im richtigen Verzeichnis, das üblicherweise auch Startup heisst. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
FL.Bz Mitglied -
Beiträge: 22 Registriert: 03.04.2014 -
|
erstellt am: 16. Mai. 2014 10:51 <-- editieren / zitieren --> Unities abgeben:
Falls das unterging: mit ugraf.exe -key: pfad\macro.macro klappt es so, wie ich es will, nur eben in einer neuen Instanz. Wie bekomme ich es hin, dass die richtige (schon offene) Ugraf.exe verwendet wird? "Das Makro muss lediglich das Journal starten, nicht den kompletten Job ausführen. Also Aufzeichnung starten, per JournalManager ein (einfaches) Journal starten, Aufzeichnung beenden. Dieses Makro editieren und NX beim Start mitgeben. Folge: Batch startet NX, NX startet Makro, Makro startet Journal."
Genau das versuche ich ja schon die ganze Zeit. Man kann aber nx_manager.bat keinen -key:macro Parameter mitgeben, sondern nur ugraf.exe, und das ist schwachsinnig, da dann eine neue ugraf-Instanz gestartet wird.
### UPDATE: ###
Im Grunde funktioniert es jetzt wenn ich über tausend Ecken via ugs_router %* -key: pfad\macro.macro mitgebe, aber es erscheint ein Klassiker der Fehlermeldungen: "Interner Fehler: Speicherzugriffsverletzung". Ich beiss hier bald in die Tischkante, ich sags euch! [Diese Nachricht wurde von FL.Bz am 16. Mai. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Feinwerkmechaniker*in (m/w/d) | Arbeitgeber: Rheinische Friedrich-Wilhelms-Universität Einsatzort: 53111 Bonn Arbeitszeit: - eine abwechslungsreiche und anspruchsvolle Tätigkeit bei einem der größten Arbeitgeber der Region, Arbeitsplatzsicherheit und Standorttreue,
- Fort- und Weiterbildungsmöglichkeiten,
- betriebliche ...
| Anzeige ansehen | Mechaniker |
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 16. Mai. 2014 14:42 <-- editieren / zitieren --> Unities abgeben: Nur für FL.Bz
Zitat: Original erstellt von FL.Bz:
Man kann aber nx_manager.bat keinen -key:macro Parameter mitgeben, sondern nur ugraf.exe, und das ist schwachsinnig, da dann eine neue ugraf-Instanz gestartet wird. ]
Den Versuch, Dir auf die Sprünge zu helfen, bezeichnest Du als schwachsinnig ??? Besten Dank ... und tschüss Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |