Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  SWX-Version in Makro abfragen ?

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 SOLIDWORKS
Autor Thema:  SWX-Version in Makro abfragen ? (2270 mal gelesen)
Laweco
Mitglied
Frickler in der Konstuktion

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

Beiträge: 7
Registriert: 24.06.2005

erstellt am: 22. Jun. 2007 11:47    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 Super-SWXSolidWorks-User,

ich habe ein Makroproblem bei der Umstellung von SWX2006 auf SWX2007, die ich nur durch eine Fallunterscheidung in ein und demselben Makro in Griff zu bekommen ist.
Deshalb die Frage in das Forum: Wie kann das Makro feststellen unter welchem SWXSolidWorks es gerade aufgerufen worden ist?
Ich bedanke mich schon mal für Eure warscheinlich vielfältigen Hinweise und Lösungsvorschläge.

Mit freundlichen Grüssen
Frank Tegeler
von der Fa. Laweco Maschinen- und Apparatebau GmbH

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 22. Jun. 2007 11:49    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 Laweco 10 Unities + Antwort hilfreich

Hallo Frank,

kannst du mit SldWorks::RevisionNumber abfragen und entsprechend reagieren.

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de

Member of CAD.de BOINC Team  -   | Seti@Home | CPDN | Einstein@Home

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 22. Jun. 2007 12:55    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 Laweco 10 Unities + Antwort hilfreich

Fix fertiger Code, welcher Dir bei SolidWorks 2007, "2007" als Resultat zurückgibt.

Code:

Option Explicit

Dim vDummy As Variant
Dim swx_version As String

Public Sub get_swx_version()

Dim m_DrawingDoc, swApp As Object
Dim vVerStr As Variant
Dim vDummy As Variant

Set swApp = CreateObject("SldWorks.Application")

If IsEmpty(vVerStr) Then
    vVerStr = swApp.DateCode
End If

If Not IsEmpty(vVerStr) Then

    If Len(vVerStr) > 5 Then
        swx_version = Left(vVerStr, 4)
    Else
        swx_version = Left(vVerStr, 2)
    End If
End If

End Sub


------------------

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 22. Jun. 2007 13:22    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 Laweco 10 Unities + Antwort hilfreich

Hallo Gilbert,

das stimmt nicht ganz, der DateCode gibt dir das Builddatum, keine Version. So gibt z.B. die SolidWorks 2008 auch im Moment dann "2007" zurück, oder die SW2007 SP1.0 würde 2006 zurückgeben.

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de

Member of CAD.de BOINC Team  -   | Seti@Home | CPDN | Einstein@Home

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 22. Jun. 2007 13:28    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 Laweco 10 Unities + Antwort hilfreich

...? Und wieso funktioniert es bei mir?

Wenn ich da noch ein debug.print einfüge, spuckt dieser mir 2007 raus...!

Ich benutze dieses Schnippsel für das Ausfüllen des Zeichnungskopfes und hat mich bis jetzt noch nicht im Stich gelassen. Es füllt mir wunderbar 2007 im Zeichnungskopf aus.

Ich kann überall, im Kopfausfüllmakro, "get_swx_version" eingeben und bekomme 2007.

EDIT:
Woops: "This method is obsolete and has been superseded by SldWorks::RevisionNumber. "
Das muss ich mir mal genauer ansehen!


------------------
   

[Diese Nachricht wurde von G. Dawg am 22. Jun. 2007 editiert.]

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 22. Jun. 2007 13:42    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 Laweco 10 Unities + Antwort hilfreich

Ok.... dann machen wir das doch so:

Code:
Dim swApp As Object

Sub main()
Set swApp = Application.SldWorks

retval = Left(swApp.RevisionNumber(), 2) + 1992

Debug.Print retval

End Sub


Thanks to HenryV! 


EDIT:
Und noch mit SP:

Code:
Dim swApp As Object
Dim sp As String
Dim ver As String

Sub main()
Set swApp = Application.SldWorks

sp = Mid(swApp.RevisionNumber(), 4, 4)
ver = Left(swApp.RevisionNumber(), 2) + 1992
Debug.Print ver & " SP" & sp

End Sub



------------------
   

[Diese Nachricht wurde von G. Dawg am 22. Jun. 2007 editiert.]

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 22. Jun. 2007 13:42    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 Laweco 10 Unities + Antwort hilfreich

Hehe, das funktioniert im Moment mit dem aktuellen Servicepack der 2007, weil das im Jahr 2007 kompiliert wurde. Versuch das mal mit der SolidWorks 2007 SP1.0 oder 0.0 oder eben mit der 2008       

Früher musste sich der geneigte Programmierer tatsächlich eine eigene Liste vorhalten, welches Builddatum zu welchem Servicepack welcher Version gehörte; weil das dann doch etwas umständlich wurde haben sie die RevisionNumber eingefügt. Die beginnt mit SolidWorks 2000 mit der Nummer 8, 2007 hat mittlerweile die Nummer 15, 2008 16 usw.

[Edit] Jupp, die Funktion sollte klappen [Korinthenkackermodus EIN] allerdings nicht für die Versionen 2000 und 2001, weil die einstelligen Nummern hatten und ab SolidWorks 2091 Plus auch wieder nicht mehr [Korinthenkackermodus AUS]        [/Edit]

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de

Member of CAD.de BOINC Team  -   | Seti@Home | CPDN | Einstein@Home

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

Lutz Federbusch
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Maschinenbau



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

Beiträge: 3094
Registriert: 03.12.2001

alle SW seit 97+
AutoCAD2016-2022
ERP ProAlpha + CA-Link
Intel Core i7-7820K 32GB
Win10x64 Quadro K5000
SpacePilot

erstellt am: 22. Jun. 2007 16:42    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 Laweco 10 Unities + Antwort hilfreich

Vielleicht willst Du ja auch mittels z.B.
Set swApp = CreateObject("SldWorks.Application.15")  'SW2007
gezielt eine Version greifen, falls mehrere laufen...
Dann brauchste keene Builz wissen...

------------------
Lutz Federbusch
Mein Gästebuch
Der Mensch, Herr oder Sklave der Technik?

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 25. Jun. 2007 10:51    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 Laweco 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von StefanBerlitz:
Jupp, die Funktion sollte klappen [Korinthenkackermodus EIN] allerdings nicht für die Versionen 2000 und 2001, weil die einstelligen Nummern hatten und ab SolidWorks 2091 Plus auch wieder nicht mehr [Korinthenkackermodus AUS]

Waaaas?! 2000 & 2001?? Wow... SolidWorks ist scho soooo alt? 
"SolidWorks 2091 Plus" ... nach mir die Sintflut  ! Ich denke nicht, dass ich mit 113 Jahre noch SolidWorks Anwender bin! Und bis dahin wird man, hoffentlich, nicht mehr mit VB programmieren - Somit wäre dieser Schnippsel eh veraltet und... ja ...!

------------------

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

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



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

Beiträge: 2675
Registriert: 06.11.2000

SolidWorks Start 1999
** CSWP 01/2008 **
------------------
Zuletzt beruflich:
- SWX2020 SP5;
- SAP/PLM+ECTR;
- DriveWorks Pro;
- Programmierung:
VBA, aktuell Visual Studio 2022/VB.Net
------------------
ab 2024 (privat):
Onshape und anderes

erstellt am: 28. Nov. 2007 13:03    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 Laweco 10 Unities + Antwort hilfreich

Coole Sache das 

Weiß vielleicht auch jemand, wie ich das per Batchskript rauskriege?
"Welche Version ist in Verzeichnis XYZ installiert.."?

------------------
Klaus

www.al-ko.com | mein Gästebuch | privat...

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 28. Nov. 2007 13:43    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 Laweco 10 Unities + Antwort hilfreich

Hallo Klaus,

das Klappt über die Abfrage einiger Windows Registry Schlüssel und Einträge.
In vb.Net zum Beispiel so:

Code:

''' <summary>
    ''' Ermittelt aus den Einträgen in der Registry den Pfad der SolidWorks Exe Datei
    ''' </summary>
    ''' <param name="sVersionNummer">Optionale Versionsangabe. z.B. "14" für SolidWorks 2006</param>
    ''' <returns>Pfad der SolidWorks Exe oder ein leerer String</returns>
    ''' <remarks></remarks>
    Private Function SolidWorksExeDateiPfadAusDerRegistryErmitteln( _
                Optional ByVal sVersionNummer As String = "") As String
        Try
            Dim sSolidWorksKlassenName As String = "SldWorks.Application"
            Dim sClassId As String
            Dim sSolidWorksPfad As String = ""
            'Wurde eine Versionsnummer übergeben?
            If sVersionNummer.Length <> 0 Then
                If sVersionNummer.StartsWith(".") Then
                    sSolidWorksKlassenName = sSolidWorksKlassenName & sVersionNummer
                Else
                    sSolidWorksKlassenName = sSolidWorksKlassenName & "." & sVersionNummer
                End If
            End If
            'Klassen Id Nummer ermitteln
            sClassId = CType(My.Computer.Registry.GetValue( _
                "HKEY_CLASSES_ROOT\" & sSolidWorksKlassenName & _
                "\Clsid\", "", ""), String)
            If sClassId.Length > 0 Then
                sSolidWorksPfad = CType(My.Computer.Registry.GetValue( _
                    "HKEY_CLASSES_ROOT\CLSID\" & sClassId & _
                    "\LocalServer32\", "", ""), String)
            End If
            Return sSolidWorksPfad
        Catch ex As Exception
            Debug.Assert(False)
            Trace.WriteLine("Fehler: Wo: " & _
                ex.StackTrace & " Was: " & ex.Message)
            Return Nothing
        End Try
    End Function

------------------
Mfg Daniel

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

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



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

Beiträge: 2675
Registriert: 06.11.2000

SolidWorks Start 1999
** CSWP 01/2008 **
------------------
Zuletzt beruflich:
- SWX2020 SP5;
- SAP/PLM+ECTR;
- DriveWorks Pro;
- Programmierung:
VBA, aktuell Visual Studio 2022/VB.Net
------------------
ab 2024 (privat):
Onshape und anderes

erstellt am: 28. Nov. 2007 15:55    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 Laweco 10 Unities + Antwort hilfreich

Danke 
das war jetzt aber falsch verstanden- war der Satz so zweideutig?.

Ich weiß, wo bei mir SWX installiert ist- meistens wenigstens:
c:\Programme\SolidWorks
Abweichungen davon gibt es nur auf meinem und auf einzelnen Testrechnern, wenn ich z.B. mehrere Versionen parallel installiert habe. Das ist dann aber der Sonderfall.

Aber ich würde gerne- möglichst per Batch- herausbekommen, welche Version in diesem Verzeichnis installiert ist. Und das, wenn's geht, ohne SolidWorks starten zu müssen.

------------------
Klaus

www.al-ko.com | mein Gästebuch | privat...

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

Lutz Federbusch
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Maschinenbau



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

Beiträge: 3094
Registriert: 03.12.2001

alle SW seit 97+
AutoCAD2016-2022
ERP ProAlpha + CA-Link
Intel Core i7-7820K 32GB
Win10x64 Quadro K5000
SpacePilot

erstellt am: 28. Nov. 2007 16:26    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 Laweco 10 Unities + Antwort hilfreich

Es gibt schon in den Verzeichnissen Dateien, die verraten können, welche Version das ist. Die eleganteste Variante wäre natürlich, die Registry abzufragen. Du kannst aber auch die eula.txt, den performance.log oder die userpref.reg auslesen und auswerten...
Auslesen geht über das Öffnen der Datei mit MS-Scripting Runtime und zeilenweises auslesen.

------------------
Lutz Federbusch
Mein Gästebuch
Der Mensch, Herr oder Sklave der Technik?

[Diese Nachricht wurde von Lutz Federbusch am 28. Nov. 2007 editiert.]

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

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



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

Beiträge: 2675
Registriert: 06.11.2000

SolidWorks Start 1999
** CSWP 01/2008 **
------------------
Zuletzt beruflich:
- SWX2020 SP5;
- SAP/PLM+ECTR;
- DriveWorks Pro;
- Programmierung:
VBA, aktuell Visual Studio 2022/VB.Net
------------------
ab 2024 (privat):
Onshape und anderes

erstellt am: 28. Nov. 2007 16:53    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 Laweco 10 Unities + Antwort hilfreich

Hmm...da muss ich mich wohl doch mal mit dem WSH beschäftigen :/

In der Eula steht keine Version, aber aus der userpref.reg kann man das sicher rausholen, vielen Dank für den Tipp  .

 

Zitat:
Die eleganteste Variante wäre natürlich, die Registry abzufragen.
Wo steht da zuverlässig die installierte Version? Wäre eventuell was für ne Konsolenanwendung mit VB.Net.

(ich kann mich erinnern, dass wir das Thema schon mal hatten, vor ein paar Jahren, aber ich finde das nicht mehr)

------------------
Klaus

    www.al-ko.com | mein Gästebuch | privat...

[Diese Nachricht wurde von KMassler am 28. Nov. 2007 editiert.]

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

Lutz Federbusch
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Maschinenbau



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

Beiträge: 3094
Registriert: 03.12.2001

alle SW seit 97+
AutoCAD2016-2022
ERP ProAlpha + CA-Link
Intel Core i7-7820K 32GB
Win10x64 Quadro K5000
SpacePilot

erstellt am: 28. Nov. 2007 17:12    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 Laweco 10 Unities + Antwort hilfreich


Aufruf.txt


Textdateizeilenweiseauslesen.txt

 
Bei der HKLM stehen schon unter Software die installierten Versionen mit dabei.
Aber ob sie noch da sind?!
Das eigentliche Auslesen der Dateien, die es Dir auch anzeigen können sieht im Code etwa so aus, wie in Aufruf.txt; die Runtime -Routinen hatte ich als Modul eingebunden, finde aber gerade nicht alles => Wenn ich mal Zeit habe, mache ich vielleicht ein Beispiel...

------------------
Lutz Federbusch
Mein Gästebuch
Der Mensch, Herr oder Sklave der Technik?

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 29. Nov. 2007 07:08    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 Laweco 10 Unities + Antwort hilfreich

....kannst Du nicht mit z.B.
Code:
C:
cd\
cd programme
dir /s sldworks.exe

den Pfad verwenden?!
Ich kenne leider die Befehle im .bat nicht. Nur wie ich die nervigen thumbs.* lösche etc.

------------------

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

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



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

Beiträge: 2675
Registriert: 06.11.2000

SolidWorks Start 1999
** CSWP 01/2008 **
------------------
Zuletzt beruflich:
- SWX2020 SP5;
- SAP/PLM+ECTR;
- DriveWorks Pro;
- Programmierung:
VBA, aktuell Visual Studio 2022/VB.Net
------------------
ab 2024 (privat):
Onshape und anderes

erstellt am: 29. Nov. 2007 08:12    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 Laweco 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von G. Dawg:
....kannst Du nicht mit z.B.
Code:
C:
cd\
cd programme
dir /s sldworks.exe

den Pfad verwenden?!
Ich kenne leider die Befehle im .bat nicht. Nur wie ich die nervigen thumbs.* lösche etc.



?? Versteh ich jetzt nicht. Das gibt nur eine Anzeige aller Dateien und Unterverzeichnisse im Solidworks-Programmverzeichnis. Wie willst du da auf die Version schließen?

@Lutz: Uff. Herzlichen Dank, das werde ich mir mal genauer anschauen, aber das kann ein bischen dauern. Wie gesagt: mit dem WSH bin ich nicht auf Du und Du.

Danke an alle, ich glaube, damit müsste ich eigentlich weiterkommen.

------------------
Klaus

www.al-ko.com | mein Gästebuch | privat...

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 29. Nov. 2007 08:19    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 Laweco 10 Unities + Antwort hilfreich

"Normalerweise" wird,z.B. SolidWorks 2007, im Verzeichnis SolidWorks 2007 installiert => 2007
Aber wenn mehr als eine Version installiert ist, wirst Du vermutlich eh ein Problem bekommen. Oder ein altes Verzeichnis nicht gelöscht wurde.

Mit dem DIR /S sldworks.exe bekommst Du den Pfad zurück, wo die Datei liegt. Ich dachte, den kannst Du gebrauchen.

------------------

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

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



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

Beiträge: 2675
Registriert: 06.11.2000

SolidWorks Start 1999
** CSWP 01/2008 **
------------------
Zuletzt beruflich:
- SWX2020 SP5;
- SAP/PLM+ECTR;
- DriveWorks Pro;
- Programmierung:
VBA, aktuell Visual Studio 2022/VB.Net
------------------
ab 2024 (privat):
Onshape und anderes

erstellt am: 29. Nov. 2007 08:29    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 Laweco 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von G. Dawg:
Mit dem DIR /S sldworks.exe bekommst Du den Pfad zurück, wo die Datei liegt. Ich dachte, den kannst Du gebrauchen.
Ups...hab ich doch glatt das  .exe in dem Befehl vergessen

Danke  , aber das nützt zumindest mir nicht, da wir die produktiv eingesetzte Version von SolidWorks IMMER im Verzeichnis c:\programme\Solidworks installieren- unabhängig von der Version.
Andere Verzeichnisse gibts nur bei mir und auf diversen Testrechnern, wenn z.B. neue Versionen testweise parallel installiert werden.

Das hat den einen Grund: wir haben einige Skripte, Programme, Tools im Einsatz- zur Installation, Wartung, Deinstallation, Addons...
Viele davon benötigen den Programmpfad von SolidWorks, um das zu tun, was sie sollen.
Würden wir nun bei jeder neuen Solidworksversion ein neues Programmverzeichnis erstellen und verwenden, dann müssten wir jedes Mal die Pfade in sämtlichen Skripten und Programmen anpassen. Das wäre viel zu aufwändig.

------------------
Klaus

www.al-ko.com | mein Gästebuch | privat...

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

HenryV
Mitglied
Konstrukteur, Engineering


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

Beiträge: 817
Registriert: 18.05.2005

SolidWorks 2022 x64 SP5.0
Dell Precision 5820
Intel Xeon W-2125 4x4GHz
NVIDIA Quadro P2000 5GB
32GB RAM
2x Dell U2412M, 24" TFT
Windows 10 Enterprise x64 22H2
Microsoft 365 E5
Microsoft Visual Studio Enterprise 2022

erstellt am: 29. Nov. 2007 09:23    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 Laweco 10 Unities + Antwort hilfreich

Hallo Klaus

Hab da mal eine BAT-Datei gefunden, die die Versionsnummer von EXE-Dateien herausliest.

Code:
@echo off & setlocal
set "Datei=C:\Programme\SolidWorks\SLDWORKS.exe"
set "GetV=%Temp%\GetV.vbs"
echo Set objWMIService=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")>"%GetV%"
echo Set colFiles=objWMIService.ExecQuery ("SELECT * FROM CIM_Datafile WHERE Name='"^&Replace(WScript.Arguments(0),"\","\\")^&"'")>>"%GetV%"
echo For Each objFile in colFiles: WScript.Echo objFile.Version: Next>>"%GetV%"
set Version=
for /f %%i in ('cscript //nologo "%GetV%" "%Datei%"') do set "Version=%%i"
if defined Version echo %Datei% - Version %Version%
if defined Version if [%Version%]==[15.5.0.0119] goto :2007SP5
goto :END

:2007SP5
echo "Das ist Version 2007 SP5.0"

:END
del "%GetV%"
Pause


Quelle

Gruss Andreas

------------------
21 ist nur die halbe Antwort.

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

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



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

Beiträge: 2675
Registriert: 06.11.2000

SolidWorks Start 1999
** CSWP 01/2008 **
------------------
Zuletzt beruflich:
- SWX2020 SP5;
- SAP/PLM+ECTR;
- DriveWorks Pro;
- Programmierung:
VBA, aktuell Visual Studio 2022/VB.Net
------------------
ab 2024 (privat):
Onshape und anderes

erstellt am: 29. Nov. 2007 09:42    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 Laweco 10 Unities + Antwort hilfreich

Voll Cool! 

Was soll ich da noch sagen?
Wieder einiges Neues gelernt!
Der Trick mit der Umleitung der Echos in die VBS-Datei ist gut 
Man kann mit if defined den Status einer Set-Variablen feststellen!
Man kann zaubern!
Der Wahnsinn!
Ehrlich gesagt: mit sowas wie "for /f %%i in ..." und den "For Each..."-Schleifen steh ich schon immer auf Kriegsfuß, vor allem das "for ...".

Darf ich noch ein bischen unverschämt sein?
Wie kann ich jetzt das Ergebnis, z.B. "15.5.0.0119" noch zerlegen? So dass ich die Version "15" und das SP "5" einzeln bekomme?

------------------
Klaus

www.al-ko.com | mein Gästebuch | privat...

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 29. Nov. 2007 09:45    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 Laweco 10 Unities + Antwort hilfreich

Siehe hier: http://ns7.webmasters.com/caspdoc/html/vbscript_split_function.htm


EDIT:
Dann noch + 1992 zum Array 0 (wie schon gaaaaanz weit Oben beschrieben ist) und Du hast Deine Version als 2007 nicht als 15 


------------------
   

[Diese Nachricht wurde von G. Dawg am 29. Nov. 2007 editiert.]

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

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



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

Beiträge: 2675
Registriert: 06.11.2000

SolidWorks Start 1999
** CSWP 01/2008 **
------------------
Zuletzt beruflich:
- SWX2020 SP5;
- SAP/PLM+ECTR;
- DriveWorks Pro;
- Programmierung:
VBA, aktuell Visual Studio 2022/VB.Net
------------------
ab 2024 (privat):
Onshape und anderes

erstellt am: 29. Nov. 2007 10:56    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 Laweco 10 Unities + Antwort hilfreich


GetSWXVersion.txt

 
Herzlichen Dank,
jetzt hab ichs 

------------------
Klaus

www.al-ko.com | mein Gästebuch | privat...

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)2024 CAD.de | Impressum | Datenschutz