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) FTP Iterate over Files in Directory Matching ListPatternSee more RSA ExamplesUses the ListPattern property to iterate over the files in a directory matching the pattern.
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls. -- CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int -- Important: Do not use nvarchar(max). See the warning about using nvarchar(max). DECLARE @sTmp0 nvarchar(4000) -- This example requires the Chilkat API to have been previously unlocked. -- See Global Unlock Sample for sample code. DECLARE @ftp int -- Use "Chilkat_9_5_0.Ftp2" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.Ftp2', @ftp OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END EXEC sp_OASetProperty @ftp, 'Hostname', 'ftp.example.com' EXEC sp_OASetProperty @ftp, 'Username', 'my_login' EXEC sp_OASetProperty @ftp, 'Password', 'my_password' EXEC sp_OASetProperty @ftp, 'Port', 21 EXEC sp_OASetProperty @ftp, 'AuthTls', 1 DECLARE @success int EXEC sp_OAMethod @ftp, 'Connect', @success OUT IF @success <> 1 BEGIN EXEC sp_OAGetProperty @ftp, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @ftp RETURN END -- Change to the "images" sub-directory located under our FTP account's home directory. EXEC sp_OAMethod @ftp, 'ChangeRemoteDir', @success OUT, 'images' IF @success <> 1 BEGIN EXEC sp_OAGetProperty @ftp, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @ftp RETURN END EXEC sp_OASetProperty @ftp, 'ListPattern', '*.png' -- Fetch the current remote directory contents by calling GetDirCount DECLARE @n int EXEC sp_OAMethod @ftp, 'GetDirCount', @n OUT IF @n < 0 BEGIN EXEC sp_OAGetProperty @ftp, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @ftp RETURN END DECLARE @i int SELECT @i = 0 DECLARE @filename nvarchar(4000) DECLARE @sbLocalPath int -- Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbLocalPath OUT WHILE @i < @n BEGIN EXEC sp_OAMethod @ftp, 'GetFilename', @filename OUT, @i PRINT @filename -- Download this file. EXEC sp_OAMethod @sbLocalPath, 'SetString', @success OUT, 'qa_output/' EXEC sp_OAMethod @sbLocalPath, 'Append', @success OUT, @filename EXEC sp_OAMethod @sbLocalPath, 'GetAsString', @sTmp0 OUT EXEC sp_OAMethod @ftp, 'GetFile', @success OUT, @filename, @sTmp0 IF @success <> 1 BEGIN EXEC sp_OAGetProperty @ftp, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @ftp EXEC @hr = sp_OADestroy @sbLocalPath RETURN END SELECT @i = @i + 1 END EXEC @hr = sp_OADestroy @ftp EXEC @hr = sp_OADestroy @sbLocalPath END GO |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.