Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

manuelle Anpassung der GUIDs


1 reply to this topic

Gregor Artmann

Gregor Artmann
  • Full Members
  • 11 posts

Posted 11 May 2009 - 16:04

Ist es möglich, vor einem Kommandozeilen-Build die GUIDs manuell zu setzen ?

Ich habe ein Setup gebaut, das für mehrere Marken genutzt werden soll. 3/4 der Dateien sind allgemeingültig, 1/3 markenspezifisch.

Nach Austausch der markenspezifischen Dateien soll das Setup über ein Kommandozeilen-Build erstellt werden.

Die Installationen für verschiedene Marken sollen parallel auf einem System installiert werden können.

Hierfür mussen die GUIDs geändert werden, damit sich die einzelnen Installationen nicht gegenseitig ins Gehege kommen.

Wie kann ich das bewerkstelligen? Oder muss ich für jede Marke ein eigenes Setup bauen ?

kretmatt

kretmatt
  • Full Members
  • 10 posts

Posted 05 October 2009 - 08:51

Über ein VBS ist es möglich.
Ich mache folgendes (ich setzte dabei noch die Productversion und den Namen):
CODE

'set and open InstallShield project
Set pProject = CreateObject(CreateObjectCommand)
returncode = pProject.OpenProject (sISMFileName, False)
wscript.echo "OpenProject (Open ISM file) returned: " & returncode
If returncode = 1 Then
 wscript.echo "ISM file is locked by some other process (read only). Unable to build MSI file."
 wscript.echo "Build_MSI_File.vbs will return with exit code: 1"
 wscript.quit(1)
End If

'Set given version in project as comment and as version
wscript.echo "Set Productversion to: " & sVersion
pProject.ISWiSISProperties.Item("Comments").Value = "Version " & sVersion
pProject.ProductVersion = sVersion

'set given name as titel and Product Name
wscript.echo "Set Productname to: " & sMSIFile
pProject.ISWiSISProperties.Item("Title").Value = sMSIFile
pProject.ProductName = sMSIFile

'set given GUID as Productcode
wscript.echo "Set ProductCode to: {" & sProductCodeGUID & "}"
pProject.ProductCode = "{" & sProductCodeGUID & "}"

pProject.SaveProject()
pProject.CloseProject()
Set pProject = Nothing


Wenn du eine Zufällige GUID haben möchtest kannst du diese auch mit
CODE
sProductCodeGUID = pProject.GenerateGUID

erstellen lassen.

Gruß
Matze