| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
| | |
 | Anwender CAD mit Siemens NX-Basis , ein Kurs (bis zu 100% förderbar mit Bildungsgutschein)
|
|
Autor
|
Thema: Pfad eines Journals (1374 mal gelesen)
|
Jan Boettcher Mitglied
 
 Beiträge: 184 Registriert: 22.06.2005 NX 7.5 - NX 2306 SolidWorks 2006 - 2021 Win 10
|
erstellt am: 18. Feb. 2009 10:11 <-- editieren / zitieren --> Unities abgeben:         
Hallo an Alle, Hat jemand eine Idee, wie ich in einem Journal (.net) zur Laufzeit den Pfad zur Quelldatei herausbekomme? Den Pfad des kompilierten Journals (journal.dll) kann ich über das Assembly abfragen. Aber fällt jemandem ein, wie ich an die Quelldatei komme, die in NX gestartet wird. Gruß und Dank. Jan ------------------ Ingenieurbüro Jan Böttcher www.ib-boettcher.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Overcast Mitglied
 
 Beiträge: 111 Registriert: 21.12.2005 .
|
erstellt am: 18. Feb. 2009 19:21 <-- editieren / zitieren --> Unities abgeben:          Nur für Jan Boettcher
Würde da auf StackTrace/StackFrame tippen. Code:
Option Strict Off Imports System Imports System.Diagnostics Imports NXOpenModule test Sub Main Dim theSession As Session = Session.GetSession() Dim theUI As UI = UI.GetUI() Dim lw As ListingWindow = theSession.ListingWindow lw.Open() Dim st As New StackTrace(New StackFrame(True)) lw.WriteLine("File: " & st.GetFrame(0).GetFileName() ) End Sub End Module
Bei mir wird aus dem Journal Editor aber nur der temporäre Pfad angzeigt, z.B. c:\temp\NXJournals3724\journal.vb Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ThomasZwatz Ehrenmitglied V.I.P. h.c. cadadmin

 Beiträge: 5471 Registriert: 19.05.2000
|
erstellt am: 18. Feb. 2009 20:48 <-- editieren / zitieren --> Unities abgeben:          Nur für Jan Boettcher
|
Jan Boettcher Mitglied
 
 Beiträge: 184 Registriert: 22.06.2005 NX 7.5 - NX 2306 SolidWorks 2006 - 2021 Win 10
|
erstellt am: 18. Feb. 2009 21:14 <-- editieren / zitieren --> Unities abgeben:         
|

| | Initiativbewerbung für eine Werkstudierendentätigkeit | Auf uns bauen ? mit uns wachsen Wir könnten dir nun erzählen, dass wir dynamisch, innovativ und international sind. Sind wir auch. Unterscheidet uns das von anderen Unternehmen? Nein, nicht wirklich. Was uns einzigartig macht? Die Menschen. Gemeinsam mit unseren Mitarbeiterinnen und Mitarbeitern möchten wir Erfolge feiern und die Kompetenzen jedes und jeder Einzelnen individuell fördern.... | | Anzeige ansehen | Bildung und Soziales |
|
Overcast Mitglied
 
 Beiträge: 111 Registriert: 21.12.2005 .
|
erstellt am: 19. Feb. 2009 11:32 <-- editieren / zitieren --> Unities abgeben:          Nur für Jan Boettcher
Zitat: Original erstellt von ThomasZwatz: Laut Doku (dotNET Guide NX5) sollte das gehen mit: Namespaces > NXOpen > Session > ExecutingJournal .... Returns the full path to the journal that is currently being executed Thomas
Bei mir funktioniert das bei Ausführung mit Journal Files (*.vb,*.cs), aber bei DLLs (siehe Eingangs-Posting) bekomme ich keinen String zurück. Bei DLLs funktioniert aber die StackTrace-Methode. Hier der Testcode zum kompilieren: Code:
Option Strict Off Imports System Imports System.Diagnostics Imports NXOpenModule Module1 ' Explicit Activation ' This entry point is used to activate the application explicitly Sub Main() Dim theSession As Session = Session.GetSession() Dim theUI As UI = UI.GetUI() ' TODO: Add your application code here Dim lw As ListingWindow = theSession.ListingWindow lw.Open() lw.WriteLine("Executing Journal: " & theSession.ExecutingJournal) Dim st As New StackTrace(New StackFrame(True)) lw.WriteLine("File: " & st.GetFrame(0).GetFileName()) End Sub Public Function GetUnloadOption(ByVal dummy As String) As Integer 'Unloads the image immediately after execution within NX GetUnloadOption = NXOpen.Session.LibraryUnloadOption.Immediately End Function
End Module
[Diese Nachricht wurde von Overcast am 19. Feb. 2009 editiert.] [Diese Nachricht wurde von Overcast am 19. Feb. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |