Subject Re: [firebird-php] PHP Driver status
Author Pierre Joye
On Thu, Oct 16, 2008 at 4:09 AM, Giovanni Premuda <lists@...> wrote:
> Pierre Joye wrote:
>> VC6, 7, 8 and 9 CRTs are not compatible with each other. It is not
>> recommended (read: don't do it) to mix them at runtime. For example,
>> when memory areas are allocated by a CRT and freed by another may end
>> to crashes.
> fbclient.dll and gds32.dll certainly do not depend on the CRT version of
> the application, they dont' even depend on the application using a C
> Runtime Library.

As I said earlier, crashes may happen. It may work if all dependencies
are strictly independent from a memory point of view (and some other
things). But our experiences (and the MS recommendation) in this case
told us that it rarely works. Having finally choosed to build our deps
using the same CRT and VC versions have brought stability to the
Windows releases. We are not the only projects to do so, and there are
reasons for that.

> What you are describing are problems that happen only with dll's that do
> share memory with some ugly hack.

It is not necessary ugly hacks, especially not when used in language bindings.

Pierre |