Owen Rudge : mapi32: Add stub implementation of MAPISendMailW.

Alexandre Julliard julliard at winehq.org
Tue Apr 24 13:14:41 CDT 2012


Module: wine
Branch: master
Commit: 7031588c7668fdee0561f0fa55c84ce1cc0d41a6
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=7031588c7668fdee0561f0fa55c84ce1cc0d41a6

Author: Owen Rudge <orudge at codeweavers.com>
Date:   Mon Apr 23 14:05:49 2012 +0100

mapi32: Add stub implementation of MAPISendMailW.

---

 dlls/mapi32/mapi32.spec |    1 +
 dlls/mapi32/sendmail.c  |   28 ++++++++++++++++++++++++++++
 dlls/mapi32/util.c      |    1 +
 dlls/mapi32/util.h      |    1 +
 4 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/dlls/mapi32/mapi32.spec b/dlls/mapi32/mapi32.spec
index ae85b4a..c84cfd4 100644
--- a/dlls/mapi32/mapi32.spec
+++ b/dlls/mapi32/mapi32.spec
@@ -188,3 +188,4 @@
 253 stub FixMAPI at 0
 254 stdcall FGetComponentPath(str str ptr long long)
 255 stdcall FGetComponentPath at 20(str str ptr long long) FGetComponentPath
+256 stdcall MAPISendMailW(ptr ptr ptr long long)
diff --git a/dlls/mapi32/sendmail.c b/dlls/mapi32/sendmail.c
index 89daf0f..e313b53 100644
--- a/dlls/mapi32/sendmail.c
+++ b/dlls/mapi32/sendmail.c
@@ -408,6 +408,34 @@ ULONG WINAPI MAPISendMail( LHANDLE session, ULONG_PTR uiparam,
     return MAPI_E_NOT_SUPPORTED;
 }
 
+/**************************************************************************
+ *  MAPISendMailW	(MAPI32.256)
+ *
+ * Send a mail.
+ *
+ * PARAMS
+ *  session  [I] Handle to a MAPI session.
+ *  uiparam  [I] Parent window handle.
+ *  message  [I] Pointer to a MAPIMessageW structure.
+ *  flags    [I] Flags.
+ *  reserved [I] Reserved, pass 0.
+ *
+ * RETURNS
+ *  Success: SUCCESS_SUCCESS
+ *  Failure: MAPI_E_FAILURE
+ *
+ */
+ULONG WINAPI MAPISendMailW(LHANDLE session, ULONG_PTR uiparam,
+    lpMapiMessageW message, FLAGS flags, ULONG reserved)
+{
+    /* Check to see if we have a Simple MAPI provider loaded */
+    if (mapiFunctions.MAPISendMailW)
+        return mapiFunctions.MAPISendMailW(session, uiparam, message, flags, reserved);
+
+    WARN("STUB\n");
+    return MAPI_E_NOT_SUPPORTED;
+}
+
 ULONG WINAPI MAPISendDocuments(ULONG_PTR uiparam, LPSTR delim, LPSTR paths,
     LPSTR filenames, ULONG reserved)
 {
diff --git a/dlls/mapi32/util.c b/dlls/mapi32/util.c
index 90cfa6e..abc4db6 100644
--- a/dlls/mapi32/util.c
+++ b/dlls/mapi32/util.c
@@ -1075,6 +1075,7 @@ void load_mapi_providers(void)
         mapiFunctions.MAPISaveMail = (void*) GetProcAddress(mapi_provider, "MAPISaveMail");
         mapiFunctions.MAPISendDocuments = (void*) GetProcAddress(mapi_provider, "MAPISendDocuments");
         mapiFunctions.MAPISendMail = (void*) GetProcAddress(mapi_provider, "MAPISendMail");
+        mapiFunctions.MAPISendMailW = (void*) GetProcAddress(mapi_provider, "MAPISendMailW");
     }
 
     /* Extended MAPI functions */
diff --git a/dlls/mapi32/util.h b/dlls/mapi32/util.h
index 6fbf81e..4582855 100644
--- a/dlls/mapi32/util.h
+++ b/dlls/mapi32/util.h
@@ -41,6 +41,7 @@ typedef struct MAPI_FUNCTIONS {
     LPMAPIRESOLVENAME    MAPIResolveName;
     LPMAPISAVEMAIL       MAPISaveMail;
     LPMAPISENDMAIL       MAPISendMail;
+    LPMAPISENDMAILW      MAPISendMailW;
     LPMAPISENDDOCUMENTS  MAPISendDocuments;
     LPMAPIUNINITIALIZE   MAPIUninitialize;
 




More information about the wine-cvs mailing list