Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(SQL Server) Save Email Attachments to FilesystemSaves email attachments to a directory.
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls. -- CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int DECLARE @iTmp0 int -- Important: Do not use nvarchar(max). See the warning about using nvarchar(max). DECLARE @sTmp0 nvarchar(4000) DECLARE @email int -- Use "Chilkat_9_5_0.Email" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.Email', @email OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END -- Load an email object containing attachments. -- This .eml can be downloaded from: -- http://www.example-code.com/testData/HtmlEmail.eml DECLARE @success int EXEC sp_OAMethod @email, 'LoadEml', @success OUT, 'HtmlEmail.eml' IF @success <> 1 BEGIN EXEC sp_OAGetProperty @email, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @email RETURN END -- If OverwriteExisting is turned on, files with the same -- name are overwritten. If turned off, new/unique filenames -- are automatically generated. The filenames actually saved -- are accessible via the GetAttachmentFilename method. EXEC sp_OASetProperty @email, 'OverwriteExisting', 1 -- Save all attachments to the "myAttachments" subdirectory -- found under the calling process's current working directory. -- This directory is automatically created if it does not already -- exist. EXEC sp_OAMethod @email, 'SaveAllAttachments', @success OUT, 'myAttachments' IF @success <> 1 BEGIN EXEC sp_OAGetProperty @email, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @email RETURN END -- List the attachment filenames: DECLARE @i int EXEC sp_OAGetProperty @email, 'NumAttachments', @iTmp0 OUT SELECT @i = 0 WHILE @i <= @iTmp0 - 1 BEGIN EXEC sp_OAMethod @email, 'GetAttachmentFilename', @sTmp0 OUT, @i PRINT @sTmp0 SELECT @i = @i + 1 END EXEC @hr = sp_OADestroy @email END GO |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.