Showing results for 
Search instead for 
Did you mean: 

programmatically set active version

Valued Contributor
Valued Contributor

Is there anyway to (using set the active version of Solid Edge like the SESetActiveVersion?


I've got a few colleagues who have more then one version of SE for review purposes on their computer. However from time to time they to forget switch to the right version giving all sorts of odd errors. Thus I want to program a menu that gets and or sets the active version and starts SE.


Maarten Elings | Engineer

Re: programmatically set active version

Solution Partner Legend Solution Partner Legend
Solution Partner Legend



no, such a function isn't available.


Kind regards,
Wolfgang Kunert -

Re: programmatically set active version

Solution Partner Phenom Solution Partner Phenom
Solution Partner Phenom

As I am also developing on multiple version simultaneously, I use the following VB script, to activate a specific version of SE. The script was simplified to do only the activation. If you want, you can also start SE immediately after, clean temp files, etc...

NOTE: You may need to update the path to the SESetActiveVersion executable.

Set WShell = CreateObject("WScript.Shell")
Set FSO	   = CreateObject("Scripting.FileSystemObject")

On Error Resume Next
'On Error GoTo 0

'Activating SolidEdge
' Samples: "20x86" => V20 (32bit)
'          "21x86" => ST  (32bit)
'          "103"   => ST3 (64bit)
sLastSEVersion = WShell.RegRead("HKCU\Software\MBSoft\Macros\LastSEVersion")
sVersion = InputBox("Which version of Solid Edge do you want to activate ?", _
										"Version:", sLastSEVersion)
If sVersion = "" Then
	sVersion = sLastSEVersion
End If

sMainVersion = sVersion
 sProgramFolder = "Program Files"
If Right(sVersion,3) = "x86" Then
  sMainVersion = Left(sVersion, Len(sVersion)-3)
	sProgramFolder = "Program Files (x86)"
End If

'Define the subfolder name
If CInt(sMainVersion) < 21 Then
	sSubFolder = "Solid Edge V" + sMainVersion
	nSTVersion = CInt(sMainVersion) - 100
  If nSTVersion > 1 Then
    sSubFolder = "Solid Edge ST" + CStr(nSTVersion)
    sSubFolder = "Solid Edge ST"
  End If
End If

If sVersion <> sLastSEVersion Then
	If nSTVersion < 6 Then
	  WShell.Run """C:\" + sProgramFolder + "\" + sSubFolder + "\Program\MakeVerCurr.exe""", 1, vbTrue
	  WShell.Run """C:\Program Files\SESetActive\SESetActiveVersion.exe""", 1, vbTrue
	End If
  'WShell.Run "regsvr32 S:\Program\SEInstallData.dll", 1, vbTrue
End If

WShell.RegWrite "HKCU\Software\MBSoft\Macros\LastSEVersion", sVersion

Set FSO    = Nothing
Set WShell = Nothing