Search code examples
nsispsql

How to use nsExec::Exec in nsis, when calling psql with a script containing accents?


I try to execute this script with psql

insert into users (id, name) values ('n1', 'marie');
insert into users (id, name) values ('n2', 'kévin');

In NSIS 3.03, using

nsExec::Exec '"psql.exe" -U postgres -f "script.sql"'

only insert the value 'n1', so the one with no accent.

Using ExecWait instead of nsExec::Exec inserts all the lines, but I don't want the black DOS box to appear ; ExecDos causes the same issue as nsExec::Exec.

What can i do to make nsExec::Exec works fine with scripts containing accents ?


Solution

  • to encode my scripts in UTF-8 instead of Windows-1252 resolves the issue