![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(SQL Server) Transition from Imap.FetchBundleAsMime to Imap.FetchSingleBdProvides instructions for replacing deprecated FetchBundleAsMime method calls with FetchSingleBd. Note: This example requires Chilkat v11.0.0 or greater.
-- 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 @imap int -- Use "Chilkat_9_5_0.Imap" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.Imap', @imap OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END -- ... -- ... DECLARE @mset int -- Use "Chilkat_9_5_0.MessageSet" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.MessageSet', @mset OUT DECLARE @success int EXEC sp_OAMethod @imap, 'QueryMbx', @success OUT, 'FROM joe@example.com', 1, @mset -- ... -- ... -- ------------------------------------------------------------------------ -- The FetchBundleAsMime method is deprecated: DECLARE @saObj int EXEC sp_OAMethod @imap, 'FetchBundleAsMime', @saObj OUT, @mset EXEC sp_OAGetProperty @imap, 'LastMethodSuccess', @iTmp0 OUT IF @iTmp0 = 0 BEGIN EXEC sp_OAGetProperty @imap, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @imap EXEC @hr = sp_OADestroy @mset RETURN END -- ... -- ... EXEC @hr = sp_OADestroy @saObj -- ------------------------------------------------------------------------ -- Do the equivalent using FetchSingleBd. EXEC sp_OASetProperty @imap, 'AutoDownloadAttachments', 1 DECLARE @bdMime int -- Use "Chilkat_9_5_0.BinData" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.BinData', @bdMime OUT DECLARE @bUid int EXEC sp_OAGetProperty @mset, 'HasUids', @bUid OUT DECLARE @numEmails int EXEC sp_OAGetProperty @mset, 'Count', @numEmails OUT DECLARE @i int SELECT @i = 0 WHILE @i < @numEmails BEGIN EXEC sp_OAMethod @mset, 'GetId', @iTmp0 OUT, @i EXEC sp_OAMethod @imap, 'FetchSingleBd', @success OUT, @iTmp0, @bUid, @bdMime -- ... -- ... SELECT @i = @i + 1 END EXEC @hr = sp_OADestroy @imap EXEC @hr = sp_OADestroy @mset EXEC @hr = sp_OADestroy @bdMime END GO |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.