This is the mail archive of the cygwin@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Trouble accessing functions in cygwin1.dll


On Fri, Dec 08, 2000 at 11:01:19AM +1100, Peter Tersteeg wrote:
>>>I'm trying to use cygwin in a VC++ project (not pleasant, but I don't
>>>have a choice) and I'm trying to access several functions using
>>>LoadLibrary and GetProcAddress.  I've used assertions to check that
>>>they are found successfully, but at runtime the program crashes when
>>>calling any of these functions.
>>
>>It's not ok.  The fact that the program crashes should be a mild hint
>>that this is so.
>>
>>You can't call cygwin from a VC++ program unless you really really know
>>what you're doing.  And even then, I'm not too sure.
>
>I'm not sure that I understand this statement.  My understanding of
>DLL's is that they run are basically a library which any windows based
>compiler should be able to link to.  It should be irrelevant what
>compiler is used, so long as it supports the platform.
>
>Does this mean that I have to build and run under the bash shell?  I'd
>prefer not to be constrained by this if I can help it.

Wait a minute.  Maybe I "misspoke" here.  It is possible to do this and
get limited functionality.  Sorry.

You need to call "cygwin_dll_init" (via GetProcAddress of course) prior
to using any cygwin functions.  This function takes no arguments.

This doesn't mean that you'll be able to call every single cygwin
function.  Some, like fork() won't work.  Possibly signal handling won't
work.  And, you still won't necessarily be able to call cygwin functions
that conflict with Microsoft functions, like printf.

cgf

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]