Share via


MAPISENDDOCUMENTS 回呼函式 (mapi.h)

[不建議使用此函式。 它可能會在後續版本的 Windows 中改變或無法使用。

MAPISendDocuments 函式會傳送具有一或多個附加檔案和涵蓋附注的標準訊息。 涵蓋附註是一個對話框,可讓使用者輸入收件者清單和選擇性郵件。 MAPISendDocumentsMAPISendMail 函式不同,因為它允許產生訊息的彈性較低。

語法

MAPISENDDOCUMENTS Mapisenddocuments;

ULONG Mapisenddocuments(
  [in] ULONG_PTR ulUIParam,
  [in] LPSTR lpszDelimChar,
  [in] LPSTR lpszFilePaths,
  [in] LPSTR lpszFileNames,
       ULONG ulReserved
)
{...}

參數

[in] ulUIParam

父視窗句柄或零,表示如果顯示對話框,則為應用程式強制回應。 如果 ulUIParam 參數包含父視窗句柄,則其類型為 HWND (轉換成ULONG_PTR) 。 如果未在呼叫期間顯示任何對話框, 則會忽略 ulUIParam

[in] lpszDelimChar

呼叫端用來分隔 lpszFullPathslpszFileNames 參數所指向之名稱的字元指標。 呼叫端應該為作業系統檔名中未使用的分隔符選取字元。

[in] lpszFilePaths

字串的指標,其中包含附件檔案的完整路徑清單 (包括驅動器號) 。 此清單是由串連正確的格式檔案路徑所組成,並以 lpszDelimChar 參數中指定的字元分隔,後面接著 Null 終止符。 有效清單的範例如下:

C:\TMP\TEMP1.DOC;C:\TMP\TEMP2.DOC

此參數中指定的檔案會新增至訊息作為檔案附件。 如果此參數為 NULL 或包含空字串,則會顯示 [傳送記事] 對話框,且沒有附加的檔案。

[in] lpszFileNames

原始檔名的 Null 終止清單指標,因為它們應該出現在訊息中。 指定多個名稱時,清單會串連 以 lpszDelimChar 參數中指定的字元分隔的檔名,後面接著 Null 終止符。 範例如下:

TEMP3.DOC;TEMP4.DOC

如果 lpszFileNames 參數沒有值,或如果它是空的, MAPISendDocuments 會將檔名設定為 lpszFullPaths 參數所指示的檔名值。

ulReserved

保留;必須是零。

傳回值

此函式會傳回下列其中一個值。

傳回碼 Description
MAPI_E_ATTACHMENT_OPEN_FAILURE
無法找到 lpszFilePaths 參數中的一或多個檔案。 未傳送任何訊息。
MAPI_E_ATTACHMENT_WRITE_FAILURE
附件無法寫入臨時檔。 檢查目錄許可權。
MAPI_E_FAILURE
傳送訊息時發生一或多個未指定的錯誤。 如果訊息已傳送,則不知道。
MAPI_E_INSUFFICIENT_MEMORY
記憶體不足,無法繼續。
MAPI_E_LOGIN_FAILURE
沒有預設登入,而且使用者無法在顯示登入對話框時成功登入。 未傳送任何訊息。
MAPI_E_USER_ABORT
使用者取消了其中一個對話框。 未傳送任何訊息。
SUCCESS_SUCCESS
呼叫成功且已傳送訊息。

備註

MAPISendDocuments 函式會傳送標準訊息,一律會顯示涵蓋筆記對話方塊,讓使用者可以提供收件者和其他傳送選項。 此函式會嘗試使用傳訊系統的共享會話來建立會話。 如果沒有共享會話存在,它會提示使用者輸入登入資訊以建立會話。 MAPISendDocuments 傳回之前,它會結束會話。

郵件附件可以包含使用中檔,或呼叫 MAPISendDocuments之用戶端應用程式中目前開啟的所有檔。 此函式主要用於從宏或腳本語言呼叫,通常位於電子錶格或文字處理程式等應用程式中。

MAPISendDocuments 會建立許多檔案附件,因為 lpszFullPaths 參數指定了路徑,但有不同數目的路徑和檔名。 呼叫端負責刪除使用 MAPISendDocuments時所建立的臨時檔。

規格需求

需求
目標平台 Windows
標頭 mapi.h

另請參閱

MAPISendMail

簡單MAPI