Re: Running Windows binaries from non-English folder

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Yuri Martsinovsky schrieb am 07.11.2017 um 20:30:
> I put PostgreSQL binary files in Windows in a folder with Russian name, for example:
> C:\Постгрес
> 
> When I run pg_ctl.exe from the Command Prompt from this current directory I get the following error:
> could not find a "pg_ctl.exe" to execute
> 
> pg_ctl.exe file is actually there and it runs, but just prints the above error to the console.
> 
> If I run 
> "C:\Постгрес\pg_ctl.exe"
> I get this error:
> invalid binary: "C:\????????\pg_ctl.exe"
> 
> The same happens when running initdb.exe
> Looks like the utility just cannot access its own file because of the russian characters.
> 
> The OS is Windows 10
> I tried running "chcp 65001" in the console window to set UTF-8 encoding for the console.
> 
> Similar errors happen if I put the binaries in English folder, but try to run initdb for a non-english data folder
> 
> Does PostgreSQL for Windows support directories in UTF-8 or other encoding? 

I have encountered that as well even with plain ASCII names, but with spaces in it.

Try

"C:\Постгрес\"pg_ctl.exe

(That is: only quote the path, not the actual executable)

I think this happens if you start pg_ctl using an administrator account. 
pg_ctl drops the privileges then and restarts itself (or something like that) but it fails to extract the filename correctly if everything is quoted.

Thomas



-- 
Sent via pgsql-admin mailing list (pgsql-admin@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux