Alt du skal gøre er at oprette en datakatalog:
initdb -D %PROGRAMDATA%\MyApp\data
installer derefter din PostgreSQL-konfigurationsfil og pg_hba.conf eller foretag eventuelle nødvendige redigeringer af filerne genereret automatisk af initdb på %PROGRAMDATA%\MyApp\data\postgresql.conf og %PROGRAMDATA%\MyApp\data\pg_hba.conf .
Så:
pg_ctl register -D %PROGRAMDATA%\MyApp\data -S auto -N postgres-MyApp -U NETWORKSERVICE
net start postgres-MyApp
Venligst brug ikke standardporten 5432. Kør på en ikke-standardport, der ikke vil være i konflikt med nogen eksisterende eller fremtidig PostgreSQL-installation. Brug heller ikke "standard" tjenestenavne som postgresql-9.2 .
(NSIS tilbyder muligvis en kommando til at starte en tjeneste i stedet for at bruge net start . Hvis det gør det, skal du bruge den relevante NSIS-kommando).
Bemærk, at %PROGRAMDATA% er kun defineret for Windows Vista og højere (hvor det peger på %SYSTEMDRIVE%\ProgramData som standard). Du kan bruge %ALLUSERSPROFILE% på Windows XP, men hvem bekymrer sig egentlig om XP nu?
Personligt foreslår jeg at bruge MSI-installationsprogrammer med WiX.