December 30, 2011DLL with D (FreeLibrary problem)
Hello everybody. I'm trying to write a DLL in D. Everything is actually working fine, until I reach FreeLibrary, which terminates the test program (written in D) with code 0x1. DllMain is called correctly, and seems to run through. But I never reach the lines after the FreeLib call. DLL: http://pastie.org/private/edvmql0g768blgx81nh14g Def: http://pastie.org/private/lrmuzenou8clmjppqqj9gw Program: http://pastie.org/private/2yvvjymgq5u50mtgyqjr0a Output: http://pastie.org/private/kktyjs6hnbjohgwzwzqsjq When I write the same program in C++, to test the DLL, I have a similar problem, although the program doesn't crash. Nothing is printed, after FreeLib, but it's still waiting for the input at getch(). C++ Program: http://pastie.org/private/fehm1lgkxar87tantbgh0q I'm still new to DLLs, or rather system programming in general, and actually have near to no idea, what could be going wrong here. Exec
December 30, 2011Re: DLL with D (FreeLibrary problem)
Posted in reply to Exec
It appears as if the following code in the detach case solves the problem: > std.c.stdio._fcloseallp = null; I'm not sure why though... why is the call such a problem, that even crashes the application, and doesn't it have any disadvantages, not to call it?