Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

OK, but isn't the point of building a program that links to (say) MSVCR71.DLL that you're expecting to run it in an environment where (say) MSVCR81.DLL isn't available?

I don't see how that fixes the problem of possibly not having an snprintf() implementation on a system that doesn't have a C99-compatible MSVC runtime environment.

Did I miss an implication of your comment somehow?



If you compile your program against some MSVCRT then it's your job to make sure that MSVCRT is available on the machine where your program is installed, by delegating to its installer.

All supported MSVCRTs are installable on all supported Windows SKUs.


Yes, that's the thing I always forget, the way Windows deals with multiple incompatible versions of msvcrt is that every application ships its own copy of libc, and hopefully the installer is well-written enough to only copy it into place if it's newer than the newest release of the same major version that's already there, lest a random app re-introduces a bunch of security issues that should have been closed by the last security update for every other application that uses the same msvcrt.

...and by "forget", I mean "block out due to trauma, because surely it can't be that stupid".


Supported is really doing a lot of heavy lifting there, isn't it?

Windows 7 and 8 haven't been supported in years, but are still pretty common in the wild.


> Windows 7 and 8 haven't been supported in years

Windows 7 hasn’t been supported for two years now, but Windows 8 EOS isn’t until January 2023.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: