Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  Pfad eines Journals

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
Autor Thema:  Pfad eines Journals (1285 mal gelesen)
Jan Boettcher
Mitglied



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

Beiträge: 183
Registriert: 22.06.2005

NX 7.5 - NX 2007
SolidWorks 2006 - 2021
Win 10

erstellt am: 18. Feb. 2009 10:11    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 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



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

Beiträge: 111
Registriert: 21.12.2005

.

erstellt am: 18. Feb. 2009 19:21    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 Nur für Jan Boettcher 10 Unities + Antwort hilfreich

Würde da auf StackTrace/StackFrame tippen.

Code:

Option Strict Off
Imports System
Imports System.Diagnostics
Imports NXOpen

Module 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



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

Beiträge: 5397
Registriert: 19.05.2000

erstellt am: 18. Feb. 2009 20:48    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 Nur für Jan Boettcher 10 Unities + Antwort hilfreich

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

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

Jan Boettcher
Mitglied



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

Beiträge: 183
Registriert: 22.06.2005

NX 7.5 - NX 2007
SolidWorks 2006 - 2021
Win 10

erstellt am: 18. Feb. 2009 21: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

Vielen Dank an Euch beide.

Der Tip von Thomas war goldrichtig. Wer hätte gedacht, dass tatsächlich mal etwas ganz einfach funktioniert.

Gruß
Jan

------------------
Ingenieurbüro Jan Böttcher
www.ib-boettcher.de

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



Entwicklungsingenieur Medizintechnik (w/m/d)

CeramTec ist ein führender Entwickler und global aktiver Hersteller und Lieferant von Spezial­lösungen aus Hoch­leistungs­keramik mit mehr als 3.400 Mitarbeitern.

Unsere Lösungen sind welt­weit im Fahr­zeug- und Maschinen­bau, in der Medizin­technik, der Elektronik, der Luft- und Raum­fahrt­technik und der Energie- und Umwelt­technik im Einsatz. Willkommen bei den Keramik-Experten.

Für ...

Anzeige ansehenMedizintechnik
Overcast
Mitglied



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

Beiträge: 111
Registriert: 21.12.2005

.

erstellt am: 19. Feb. 2009 11:32    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 Nur für Jan Boettcher 10 Unities + Antwort hilfreich

  
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 NXOpen

Module 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

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