"cout" and "cerr" won't work after cygwin1.dll init from VC++

Dave Korn dave.korn@artimi.com
Tue Dec 19 20:58:00 GMT 2006

On 19 December 2006 20:09, Francisco J. Royo Santas wrote:

> I have a VC++ program that uses a Cygwin-compiled DLL. I can init
> cygwin1.dll but, after doing this, cout and cerr stop working. cout <<
> "Message" << endl does not appear on the screen. I do not know exactly what
> happens here. The program is:
> cout << "Before" << endl;   // Appears
> HMODULE cygwinDll = LoadLibrary("cygwin1.dll");
> void (*init)() = (void (__cdecl *)(void)) GetProcAddress(cygwinDll,
> "cygwin_dll_init");
> init();
> cout << "After" << endl;    // Does nor appear

  No, that is not the program, that is a not-very-useful non-compiling

> What is going on here?? What do I have to do to have cout and cerr back
> normally??

  You probably ignored step 1.


Can't think of a witty .sigline today....

Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

More information about the Cygwin mailing list