This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: Linking with MAPI problems
- To: "Peschier, J. \(r&d\)" <Jeroen dot peschier at soz dot pinkroccade dot nl>, "'cygwin at cygwin dot com'" <cygwin at cygwin dot com>
- Subject: Re: Linking with MAPI problems
- From: Danny Smith <danny_r_smith_2001 at yahoo dot co dot nz>
- Date: Tue, 22 May 2001 07:20:23 +1000 (EST)
--- "Peschier, J. (r&d)" <Jeroen.peschier@soz.pinkroccade.nl> wrote: >
> Hi!
>
> I am having problem linking with the mapi library:
>
> gcc -c MailTest.c
> gcc -o test.exe MailTest.o -lmapi32
> MailTest.o(.text+0x3f):MailTest.c: undefined reference to
> `MAPISendMail@20'
> collect2: ld returned 1 exit status
> make: *** [test.exe] Error 1
>
> I've checked that the mapi.h headerfile provided by Cygwin provides a
> prototype for MAPISendMail. According to the FAQ linking this way to
> the
> mapi library should work.
For some reason, that function name is not in the import lib for
mapi32.dll. There may be a good reason for that or it may be an
oversight. In the event, that is why you got the undefined reference.
An immediate solution is to load mapi.dll at runtime (LoadLibrary)
and use GetProcAddress function to get the entry point
Danny
The code I'm trying to compile is below:
>
> ---------------------------code MailTest.c:
> #include <windows.h>
> #include <mapi.h>
>
> int main(char **argv, int argc)
> {
> MapiMessage message;
>
> if (MAPISendMail(0, 0, &message, MAPI_DIALOG, 0) !=
> SUCCESS_SUCCESS)
> printf("Something went wrong\n");
> else
> printf("There you go\n");
> }
> ---------------------------
>
> I'm new to Cygwin but not new to gcc. I'm probably staring myself
> blind on
> something obvious here... Or perhaps it's a Cygwin or Windows 2000
> specific
> artifact that I'm unaware of? Anyway, thanks in advance for any help
> offered.
>
> Jeroen Peschier
>
>
----------------------------------------------------------------------------
> ASZ heet sinds 7 mei 2001 PinkRoccade Sociale Zekerheid. In verband
> daarmee
> zijn alle e-mailadressen van ASZ veranderd. Het nieuwe domein is nu:
> soz.pinkroccade.nl.
> Als u in uw adressenlijst nog e-mailadressen hebt staan met @asz.nl,
> gelieve
> dan de toevoeging ná de @ te wijzigen in soz.pinkroccade.nl. Vóór het
> @-teken zijn de e-mailadressen ongewijzigd gebleven.
>
----------------------------------------------------------------------------
>
>
> --
> Want to unsubscribe from this list?
> Check out: http://cygwin.com/ml/#unsubscribe-simple
>
_____________________________________________________________________________
http://messenger.yahoo.com.au - Yahoo! Messenger
- Voice chat, mail alerts, stock quotes and favourite news and lots more!
--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple