On Wed, 16 Apr 2008, Jan Dubois wrote: > | Now that I'm typing this, I have one other idea though: if the module > | links against a different runtime library than perl58.dll, then the
Just to be clear, what I mean is that IPC.dll links against e.g. MSVCR71.dll while perl58.dll links against MSVCRT.dll, not that IPC.dll doesn't link against perl58.dll. > | module will set errno inside the other runtime library and the value > | of $! is unchanged inside Perl. One thing you could do to guard > | against this is to set $! to 0 at the Perl level before calling > | constant(). But you won't be able to detect that constant() didn't > | recognize the name because you are returning a DWORD and not an SV*. > > Cheers, > -Jan