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

Installscript DWORD Wert setzen


4 replies to this topic

Phil_b

Phil_b
  • Full Members
  • 40 posts

Posted 03 November 2008 - 14:10

Hallo zusammen

Ich möchte in einem Basic MSI Project mittels Installscript ein Registry Value setzen. Das spezielle daran ist, dass es sich beim Value um einen DWORD Wert handelt. Zum setzen eines Registry Value kann ja die Funktion "RegDBSetKeyValueEx" benutzt werden. Hier mein Aufruf:

CODE
RegDBSetKeyValueEx("HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Office\\Word\\Addins\\Word2003","LoadBehavior",REGDB_NUMBER,"3",-1);


Der Wert müsste auf 3 (bzw. 0x00000003) gesetzt werden, leider funktioniert das nicht. Was mache ich falsch ?

Danke für eure Tipps

mkkk

mkkk
  • Full Members
  • 63 posts

Posted 03 November 2008 - 14:43

Rufe zunächst RegDBSetDefaultRoot() auf und setze damit den datenbankzweig auf den Du zugreifen möchtest (z.B. HKEY_LOCAL_MACHINE).

Wenn Du die 64-bit-Registry einer x64-Maschine ansprechen möchtest vorher noch
// 64bit Registry verwenden
REGDB_OPTIONS = REGDB_OPTIONS | REGDB_OPTION_WOW64_64KEY;
aufrufen.

Also:

// 64bit Registry verwenden
REGDB_OPTIONS = REGDB_OPTIONS | REGDB_OPTION_WOW64_64KEY;

RegDBSetDefaultRoot(...);
RegDBSetKeyValueEx(...);

// wieder rücksetzen, 32bit Registry verwenden
REGDB_OPTIONS = REGDB_OPTIONS & ~REGDB_OPTION_WOW64_64KEY;




Phil_b

Phil_b
  • Full Members
  • 40 posts

Posted 03 November 2008 - 14:58

Hallo

Danke für deinen Input. Funktioniert leider immer noch nicht :-(

Hier mein Aufruf
CODE

RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
REGDB_OPTIONS = REGDB_OPTIONS & ~REGDB_OPTION_WOW64_64KEY;  RegDBSetKeyValueEx("HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Office\\Word\\Addins\\Word2003","LoadBehavior",REGDB_NUMBER,"3",-1);


Was ist falsch ?

mkkk

mkkk
  • Full Members
  • 63 posts

Posted 03 November 2008 - 15:07

Stimmt der Pfad denn so? -> "SOFTWARE\\Microsoft\\Office\\Word\\Addins\\Word2003"
Ich meine nicht.
Kontrolliere das doch mal mit regedit!


Phil_b

Phil_b
  • Full Members
  • 40 posts

Posted 03 November 2008 - 15:52

Hallo

Der Pfad stimmte, ich habe fälschlicherweise den Root (HKEY_LOCAL_MACHINE) noch angegeben.

Jetzt geht's :-) Danke