Vše, co musíte udělat, je vytvořit datový adresář:
initdb -D %PROGRAMDATA%\MyApp\data
poté nainstalujte svůj konfigurační soubor PostgreSQL a pg_hba.conf nebo proveďte požadované úpravy souborů automaticky generovaných initdb na %PROGRAMDATA%\MyApp\data\postgresql.conf a %PROGRAMDATA%\MyApp\data\pg_hba.conf .
Potom:
pg_ctl register -D %PROGRAMDATA%\MyApp\data -S auto -N postgres-MyApp -U NETWORKSERVICE
net start postgres-MyApp
Prosím nepoužívejte výchozí port 5432. Spouštějte na jiném než výchozím portu, který nebude v konfliktu s žádnou existující ani budoucí instalací PostgreSQL. Také nepoužívejte "standardní" názvy služeb jako postgresql-9.2 .
(NSIS může nabízet příkaz ke spuštění služby namísto použití net start . Pokud ano, použijte příslušný příkaz NSIS).
Všimněte si, že %PROGRAMDATA% je definován pouze pro Windows Vista a vyšší (kde ukazuje na %SYSTEMDRIVE%\ProgramData ve výchozím stavu). Můžete použít %ALLUSERSPROFILE% na Windows XP, ale opravdu, koho teď zajímá XP?
Osobně doporučuji používat instalátory MSI s WiX.