On Fri, Jan 18, 2013 at 11:01 AM, Memmott, Lester
<lester.memm...@landesk.com> wrote:
>>All modern Versions of Microsoft's C Runtime are thread safe. That occurred 
>>around Visual Studio 6.0 (circa 2000 or so).
> >From http://msdn.microsoft.com/en-us/library/abx4dbyh.aspx: "The 
> >single-threaded CRT (libc.lib, libcd.lib) (formerly the /ML or /MLd
>>options) is no longer available. Instead, use the multithreaded CRT."
>
> Thanks for the quick response.  My proposal isn't to use the single threaded 
> C runtime, but instead to use the statically linked (multithreaded) C runtime 
> instead of the dynamically linked (multithreaded) runtime.
>
My bad. I read that wrong (I think I crossed wires on /MT and /ML).

Your installer should unconditionally install vcredist_*.exe before
installing the program proper. I say 'unconditionally' because some
installers don't offer a way to check for the CRT version. Since
vcredist_x86.exe is a Microsoft executable, the Microsoft installer
will exit if its not needed; and the binary should not have any
negative platform side effects.

Its also a recommended solution with, for example, Inno Installer when
the setup program carries around both an x86 and x64 copy of the
program to install. I can't give you a reference since it appears
http://news.jrsoftware.org/read/thread.php?group=jrsoftware.innosetup
is not indexed. But I asked a similar question a few years ago.

That sidesteps the FIPS requirements, and the nasty interactions
between mixing/matching static and dynamic libraries with
/NODEFAULTLIB.

Jeff
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to