The thing is these paths do not have any non ascii chars in them. Old 16b win311 apps are perfectly fine with such files, they just can't correctly show their name nor create a fresh file with non ascii name. And such behavior I was expecting from php. <? $FS = new \COM('Scripting.FileSystemObject', null, CP_UTF8); $FS->CreateTextFile("c:\\Ελλάδα.txt"); $ShortPath = $FS->GetFile("c:\\Ελλάδα.txt")->ShortPath; echo $ShortPath; file_get_contents($ShortPath); ?> error: Warning: file_get_contents(C:\BFEE~1.TXT): failed to open stream: Invalid argument in C:\test.php on line 12 I think somewhere down the rabbit hole the function tries to recreate original path and then gets confused. Is there any way around it ? Like creating a handle from a COM object, or a separate protocol like in file_get_contents("php://stdin"), or whatever to pass it to the fopen() so php won't see the offending name ? -- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php