| AWARE [SYSTEMS] | Imaging expertise for the Delphi developer | |||||||
![]() |
TIFF and LibTiff Mailing List Archive | |||||||
LibTiff Mailing List
TIFF and LibTiff Mailing List Archive Contact
The TIFF Mailing List Homepage |
Thread2010.02.18 15:59 "Re: OT: Visual C++ runtimes (was: Using libtiff in Visual C++ 6.0)", by Edward LamOlivier Paquet wrote: >> So ... versions of MSVC later than 6.0 will be unable to link against >> the libtiff DLLs. > > But this not quite. It would be true for a static library (because then > there is only one runtime) but you can very well use several DLLs which > themselves use different C++ or C runtimes in the same application. You > just need to avoid doing malloc() of memory in one DLL and free() of it > in another (which is bad design anyway). It's a bit more complicated than that. In general, any structs you create with one runtime can't be safely used with a different runtime. For example, FILE * objects created with one runtime can't be used with another. We ran into this case when we had (accidentally) compiled libraries with both VC71 and VC8 runtimes. Another thing to be aware of is that at some point (I forget when now, VC8?), time_t changed from 32-bits to 64-bits so any functions that either directly (or indirectly) use time_t can't go across the runtimes either. Regards, -Edward |
|||||||