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

Can't start Service from MSI, any working example?


1 reply to this topic

TobiasEriksson

TobiasEriksson
  • Members
  • 16 posts

Posted 26 January 2004 - 15:59

In my installer the StopService, DeleteService, StartService is executed BUT nothing happens. I know I have entries in the ServiceControl table so what am I doing wrong.
This is the contents of my ServiceControl table:

mysqldbstart afpdb 1 1 component2004
mysqldbinstallstop afpdb 2 1 component2004
mysqldbinstalldelete afpdb 8 1 component2004
mysqldbstop afpdb 32 1 component2004
mysqldbuninstall afpdb 128 1 component2004

This is the contents of my ServiceInstall table:
mysqldb afpdb afpdb 16 2 0 --defaults-file="[TARGETDIR]\CellOpt AFP\[VER]\db\mysql.cnf" afpdb Component2004 Database used by CellOpt AFP

The MSI log file simply says, nothing about the services during uninstall and during the install it says:

MSI (s) (E0:70): Doing action: StopServices
Action start 14:28:13: StopServices.
Action ended 14:28:13: StopServices. Return value 1.
MSI (s) (E0:70): Doing action: DeleteServices
Action start 14:28:13: DeleteServices.
Action ended 14:28:13: DeleteServices. Return value 1.


Anyone who can help me out?
Give me an example of how it should look when it works?

Appriciate any help I can get
Tobias


TobiasEriksson

TobiasEriksson
  • Members
  • 16 posts

Posted 02 February 2004 - 14:17

It turns out that I needed to edit the mysql.cnf file with the PATHs for the data dir etc. Now I did edit the file but apparently after the service had been installed and started.
So in order to install MySQL and other applications that needs a config file in order to run properly you would have to create a deferred CustomAction and have it edit the file prior to starting the service. And to provide arguments to the CA you need to set the CustomActionData to contain the values of interrest. I found this out from one of the articles at this site.

/Tobias