* Use "L" notation for wide character
* Remove unneeded cast
PrintMessage() now uses const pointer
* C++11 accepts std::string for std::wifstream
* C++11 accepts std::string for std::wifstream
* Use mbstowcs()/wcstombs() to convert character class
This fix works when file path includes non-ASCII characters.
* Revert "Use mbstowcs()/wcstombs() to convert character class"
This reverts commit 7fd150a157.
mbstowcs()/wcstombs() is not so secure, and recommends mbstowcs_s()/wcstombs_s().
But these secure variants are not supported by some C libraries.