Sample code for 30+ languages & platforms
SQL Server

Automatically Determine FTP Proxy Method

See more FTP Examples

Tries each of the five possible ProxyMethod settings and returns the value (1-5) of the ProxyMethod that succeeded.

Chilkat SQL Server Downloads

SQL Server
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @success int
    SELECT @success = 0

    -- This example requires the Chilkat API to have been previously unlocked.
    -- See Global Unlock Sample for sample code.

    DECLARE @ftp int
    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', 'www.example-code.com'
    EXEC sp_OASetProperty @ftp, 'Username', 'example-code.com'
    EXEC sp_OASetProperty @ftp, 'Password', '****'

    EXEC sp_OASetProperty @ftp, 'ProxyHostname', 'ftp.myproxyhost.com'
    EXEC sp_OASetProperty @ftp, 'ProxyPort', 21
    -- Note: Your FTP Proxy server may or may not require authentication.
    EXEC sp_OASetProperty @ftp, 'ProxyUsername', 'myProxyUsername'
    EXEC sp_OASetProperty @ftp, 'ProxyPassword', 'myProxyPassword'

    -- The ProxyMethod should be an integer value between 1 and 5.
    -- If you know your FTP proxy server's authentication scheme,
    -- you may set it directly.  To determine the ProxyMethod,
    -- call DetermineProxyMethod.  A return value of -1 indicates a failure.
    -- A return value of 0 indicates that nothing worked.
    -- A return value of 1-5 indicates the ProxyMethod that was 
    -- successful, and this should be the value used for the ProxyMethod
    -- property.

    DECLARE @pMethod int
    EXEC sp_OAMethod @ftp, 'DetermineProxyMethod', @pMethod OUT

    PRINT @pMethod

    EXEC sp_OAMethod @ftp, 'Disconnect', @success OUT

    EXEC @hr = sp_OADestroy @ftp


END
GO