0

これは機能します:

EXEC msdb..sp_send_dbmail
    @recipients     = 'myaddress@helloworld.co.uk',  
    @subject        = 'HELLO WORLD',
    @Importance     = 'LOW',
    @body           = 'HELLO WORLD',
    @file_attachments       = N'UNCpathway\experimental attachment.txt'

一方、これを試すと

EXEC msdb..sp_send_dbmail
    @recipients     = 'myaddress@helloworld.co.uk',  
    @subject        = 'HELLO WORLD',
    @Importance     = 'LOW',
    @body           = 'HELLO WORLD',
    @file_attachments       = N'UNCpathway\experimental attachment.xlsx'

次のエラー メッセージが表示されます。

メッセージ 22051、レベル 16、状態 1、行 0 添付ファイル 'UNCpathway\experimental attachment.xlsx' を開けませんでした。API 'CreateFile' の実行がエラー番号 32 で失敗しました。

添付ファイルを開くように求めていないので、メッセージは奇妙です! なんで?これらの添付ファイルの使用を許可するにはどうすればよいですか?

4

3 に答える 3

1

「開封済み」とは、「ファイルに保存されているバイトを電子メールにコピーできるようにメーラーがアクセスした」ことを意味し、ファイルをユーザーに提示することはありません。

CreateFileは、この種のアクセスのためにファイルを開くためによく使用されます。

エラーコード 32 はERROR_SHARING_VIOLATION.
そのため、メーラーは添付ファイルを読み取ることができません。他の何かがそれを読み取っているためです。

于 2012-11-15T13:34:41.840 に答える