First of all, thanks for the great work within such a functional tiny application.
Although all filenames are stored in UTF-8 code in Windows after 2000, I notice that this mini-server sends filename strings using ANSI code. That means if the Windows OSs on server- and client- side has different codepage settings for non-unicode applications, the filenames may get disturbed during file transfer.
Is it possible to change some configurations of the mini-server somewhere (registry?) to achieve the feature of UTF-8 filename, or I should wait for next release?
Thank you.
Is it possible to support UTF-8 filename?
Re: Is it possible to support UTF-8 filename?
Could this be the reason that I keep getting "Permission denied" when trying to transfer files with chinese characters?
I have tested several different clients, so the problem seems to be in the server.
The work-around is to replace all characters with western letters.
It's a bit of a pain to have to change all these files before going on travel, but the mini-server is so good it's worth it.
Thank you for a great little server
[i]Edit: Btw, I'm using Windows 2000 on both sides, if that matters...[/i]
I have tested several different clients, so the problem seems to be in the server.
The work-around is to replace all characters with western letters.
It's a bit of a pain to have to change all these files before going on travel, but the mini-server is so good it's worth it.
Thank you for a great little server
[i]Edit: Btw, I'm using Windows 2000 on both sides, if that matters...[/i]
If both side are setting to the same codepage, ANSI filename is not a problem, since there will not be any mismatches.
Problem happens with using non-unicode filename when server and client have different codepage settings.
At most of the time, it works like this: In the client end, either Windows or the client software translate the unicode filenames into ANSI code and send them to the mini server. In the server end, the mini server tell the ANSI names to Windows but since the codepage is not the same as client end, Windows translates those ANSI names back to unicode in a wrong way and store them on disk.
Then if you look at those uploaded files from the client end, since those names are translated back again with correct codepage, you can see CORRECT names. But they are just garbage if looking directly inside server's file system.
And the worst case is, when server system resolve the ANSI filename in their own (wrong) codepage, some characters may be resolved to illegal characters for filename like : \ / * or whatever. Then the uploading operation will totally failed.
Problem happens with using non-unicode filename when server and client have different codepage settings.
At most of the time, it works like this: In the client end, either Windows or the client software translate the unicode filenames into ANSI code and send them to the mini server. In the server end, the mini server tell the ANSI names to Windows but since the codepage is not the same as client end, Windows translates those ANSI names back to unicode in a wrong way and store them on disk.
Then if you look at those uploaded files from the client end, since those names are translated back again with correct codepage, you can see CORRECT names. But they are just garbage if looking directly inside server's file system.
And the worst case is, when server system resolve the ANSI filename in their own (wrong) codepage, some characters may be resolved to illegal characters for filename like : \ / * or whatever. Then the uploading operation will totally failed.