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

Installationspfad in Registry schreiben


7 replies to this topic

NYTA-Iceman

NYTA-Iceman
  • Members
  • 5 posts

Posted 26 April 2004 - 11:24

Ich möchte den Installationspfad eines Setups in die Registry schreiben lassen. Bei einem MSI basierenden Setup, muss nur ein RegKey mit dem Wert [INSTALLDIR] eingefügt werden. Dasselbe mit [INSTALLDIR] oder besser [TARGETDIR] funktioniert nicht. Wie kann ich dies lösen? Muss ich im Script selbst eine Befehlszeile schreiben, oder gibt es eine anwendbare Variable in den Registry Einstellungen.
Vielen Dank im voraus für die Hilfe

NYTA-Iceman

NYTA-Iceman
  • Members
  • 5 posts

Posted 18 May 2004 - 15:39

Kann mir da wirklich niemand helfen? Wäre wirklich wichtig, da ich nicht auf eine MSI Paketierung ausweichen möchte. Vielen Dank!

Perotin

Perotin
  • Full Members
  • 407 posts

Posted 19 May 2004 - 08:19

> Dasselbe mit [INSTALLDIR] oder besser [TARGETDIR] funktioniert
> nicht.

Oops? Das verstehe ich nicht ... Klappt es im non-MSI-Setup nicht, oder was?
Gibt's nicht mehr die Möglichkeit, einen Registryzweig zu definieren, der dann per Skriptbefehl geschrieben wird (in IS 5: CreateRegistrySet ("") nach ComponentMoveData ...)?

Suche in der Knowledge Base führt zB zu http://helpnet.insta...RegistryKey.htm ... hilft das?
Gruß / regards
Thomas

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 19 May 2004 - 08:25

Muss das bei InstallScript nicht in spitzen Klammern stehen:
<INSTALLDIR>
(sorry, hab schon länger kein InstallScript Projekt mehr gemacht)
Notfalls musst du halt zwei Skript-Zeilen schreiben:
CODE

RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE); // oder wo auch immer
RegDBSetKeyValueEx ("Software\\Firma\\Produkt", "Path", REGDB_STRING, INSTALLDIR, -1);  // oder so ähnlich


NYTA-Iceman

NYTA-Iceman
  • Members
  • 5 posts

Posted 21 May 2004 - 09:04

Vielen Dank erstmal!
Ich werde diese Tips mal ausprobieren, aber gibt es keine Übersicht über Variablen, welche man bei MSI oder Script in der Registry einsetzen kann? (Manufacturer, Product...)

NYTA-Iceman

NYTA-Iceman
  • Members
  • 5 posts

Posted 24 May 2004 - 13:20

SUPER!

War wirklich ganz einfach, einen Stringkey mit dem Wert <TARGETDIR> in die Registry schreiben und fertig! Merci nochmals!

Nun eine weitere Frage, gibt es eine Übersicht, welche Variabeln es für die Registry gibt (Zb. <TARGETDIR>)? Es wäre relativ einfach danach die Registry zu editieren, ganz ohne Script Wissenschaft.

Perotin

Perotin
  • Full Members
  • 407 posts

Posted 24 May 2004 - 15:01

Da verstehe ich schon wieder was nicht ... kann aber auch am Alter liegen ;^)

Eigentlich kannst Du ne ganze Menge in die Registry schreiben, und dabei die "Systemvariablen" von InstallShield verwenden, zB TARGETDIR, SUPPORTDIR, SRCDIR etc.

Gib aber beim Schreiben in die Registry acht, ob der Key schon existiert und verwende dann die gleiche Type. Achtung zB bei Reg_sz_mult(?), also Strings mit mehreren Zeilen drin ...
Gruß / regards
Thomas

bonndata#1

bonndata#1
  • Full Members
  • 20 posts

Posted 26 May 2004 - 08:08

Vorsicht empfehle ich auch bei REGDB_STRING_EXPAND bzw. bei Inhalten, die in %-Zeichen (Umgebungsvariablen) gesetzt sind.

@Thomas: das Problem mit dem Alter habe ich auch, und noch mehr Grund dazu als Du.


Gruß Wolfgang