Prechádzať zdrojové kódy
Fixed service context detection when built with VS2013.
Visual Studio 2013 includes a C runtime which assigns stdin, stdout and
stderr the file descriptors 0, 1 and 2 - just like UNIX does - even if
there are no streams available. Thus we can no longer use "_fileno(stdin)
< 0" as a check for running in a service context.
Instead we check for "GetStdHandle(STD_INPUT_HANDLE) == 0" which works
when compiled with older or newer versions of Visual Studio.
Thanks Czenda Czendov.