Like I said, you should run "_wfopen(L"E:/Some/File.txt", L"rb");" so you
narrow this down to either a problem with your C++ code or a problem with
_wfopen.

--David

On Mon, Mar 20, 2017 at 4:32 PM, Mario Emmenlauer <ma...@emmenlauer.de>
wrote:

>
> Sorry, here is the corrected example:
>
>   std::string aFileName = "E:/Some/File.txt";
>   std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>, wchar_t>
> converter;
>   std::wstring vFileName = converter.from_bytes(aFileName);
>   FILE *in_stream = _wfopen(vFileName.c_str(), L"rb");
>   // in_stream is NULL here
>
> The same code with fopen() on the original std::string works:
>   std::string aFileName = "E:/Some/File.txt";
>   FILE *in_stream = fopen(aFileName.c_str(), "rb");
>   // in_stream is a correctly opened file here
>
>     All the best,
>
>         Mario Emmenlauer
>
>
> On 21.03.2017 00:27, David Grayson wrote:
> > You must be doing something wrong because aFileName is set but not used
> in the
> > first example.
> >
> > You should try doing something like _wfopen(L"E:/Some/File.txt", L"rb");
> so that
> > you can verify that _wfopen works without strange C++ stuff.
> >
> > --David
> >
> > On Mon, Mar 20, 2017 at 4:21 PM, Mario Emmenlauer <ma...@emmenlauer.de
> > <mailto:ma...@emmenlauer.de>> wrote:
> >
> >
> >     I have a problem with code that is using _wfopen() on Windows.
> Should it
> >     work with MSYS2? I have the following code that fails:
> >
> [...]
> >
> >     Is that to be expected, or am I doing something wrong?
> >
> >     All the best,
> >
> >         Mario Emmenlauer
>
>
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Msys2-users mailing list
Msys2-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/msys2-users

Reply via email to