We left our hero trying to convert MBCS strings to UTF8. He discovered that IConv was installed with Ruby by default but not built by default. He could not figure out how to get this to work, and was not 100% convinced that this didn't need an iconv.exe anyway as well, and the whole thing smacked of irksome Unix weenie style nastiness anyway. He therefore called some Windows API routines from Ruby with the exciting method where you list all the parameters of the method as a string e.g. ILPIPIPP (int long pointer int pointer int pointer pointer). However do people using non-Western languages get anything to work ???