예제 #1
0
 /// <summary>
 /// Connects to the specified FTP server.
 /// </summary>
 /// <param name="serverName">Name of the server to which to connect.</param>
 /// <param name="serverPort">The server port to which to connect.</param>
 /// <param name="internetConnectFlags">The connection flags, such as <see cref="InternetConnectHandle.Flags.Passive"/> for passive FTP.</param>
 public void Connect(string serverName, int serverPort, InternetConnectHandle.Flags internetConnectFlags)
 {
     this.Connect(serverName, serverPort, null, null, internetConnectFlags);
 }
예제 #2
0
 /// <summary>
 /// Connects to the specified FTP server.
 /// </summary>
 /// <param name="serverName">Name of the server to which to connect.</param>
 /// <param name="serverPort">The server port to which to connect.</param>
 /// <param name="username">The username to use for authentication.</param>
 /// <param name="password">The password to use for authentication.</param>
 /// <param name="internetConnectFlags">The connection flags, such as <see cref="InternetConnectHandle.Flags.Passive"/> for passive FTP.</param>
 public void Connect(string serverName, int serverPort, string username, string password, InternetConnectHandle.Flags internetConnectFlags)
 {
     this.FtpHandle = new FtpHandle(this.InternetHandle, serverName, serverPort, username, password, internetConnectFlags);
     this.FtpHandle.StatusCallback = (args) =>
     {
         if (this.Progress != null)
         {
             this.Progress(args);
         }
     };
 }
예제 #3
0
 private static extern SafeInternetHandle DoInternetConnect(SafeInternetHandle hInternet, string lpszServerName, ushort nServerPort, string lpszUserName, string lpszPassword, InternetConnectHandle.Service dwService, InternetConnectHandle.Flags dwFlags, IntPtr dwContext);
예제 #4
0
 /// <summary>
 /// Connects to the specified FTP server.
 /// </summary>
 /// <param name="serverName">Name of the server to which to connect.</param>
 /// <param name="username">The username to use for authentication.</param>
 /// <param name="password">The password to use for authentication.</param>
 /// <param name="internetConnectFlags">The connection flags, such as <see cref="InternetConnectHandle.Flags.Passive"/> for passive FTP.</param>
 public void Connect(string serverName, string username, string password, InternetConnectHandle.Flags internetConnectFlags)
 {
     this.Connect(serverName, 0, username, password, internetConnectFlags);
 }
예제 #5
0
        /// <summary>
        /// Invokes <c>InternetConnect</c>, handling error conditions.
        /// </summary>
        /// <param name="internet">The parent opened internet handle.</param>
        /// <param name="serverName">Name of the server to which to connect.</param>
        /// <param name="serverPort">The server port to which to connect.</param>
        /// <param name="username">The username to use for authentication.</param>
        /// <param name="password">The password to use for authentication.</param>
        /// <param name="service">The service type to which to connect.</param>
        /// <param name="flags">The connection flags.</param>
        /// <returns>The connected internet handle.</returns>
        public static SafeInternetHandle InternetConnect(SafeInternetHandle internet, string serverName, ushort serverPort, string username, string password, InternetConnectHandle.Service service, InternetConnectHandle.Flags flags)
        {
            SafeInternetHandle ret = DoInternetConnect(internet, serverName, serverPort, username, password, service, flags, (IntPtr)1);

            if (ret.IsInvalid)
            {
                throw GetLastInternetException();
            }

            return(ret);
        }
예제 #6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="FtpHandle"/> class with the specified parameters. Normally, <see cref="InternetOpenHandle.Connect"/> or <see cref="O:Nito.KitchenSink.WinInet.InternetOpenHandle.ConnectFtp"/> is used instead of this constructor.
 /// </summary>
 /// <param name="parent">The parent internet connection.</param>
 /// <param name="serverName">Name of the server to which to connect.</param>
 /// <param name="serverPort">The server port to which to connect.</param>
 /// <param name="username">The username to use for authentication.</param>
 /// <param name="password">The password to use for authentication.</param>
 /// <param name="flags">The connection flags, such as <see cref="InternetConnectHandle.Flags.Passive"/> for passive FTP.</param>
 public FtpHandle(InternetHandle parent, string serverName, int serverPort, string username, string password, InternetConnectHandle.Flags flags)
     : base(parent, serverName, serverPort, username, password, Service.Ftp, flags)
 {
 }
예제 #7
0
 /// <summary>
 /// Establishes an FTP connection to the specified server.
 /// </summary>
 /// <param name="serverName">Name of the server to which to connect.</param>
 /// <param name="flags">The connection flags.</param>
 /// <returns>An established FTP connection to the specified server.</returns>
 public FtpHandle ConnectFtp(string serverName, InternetConnectHandle.Flags flags)
 {
     return(new FtpHandle(this, serverName, 0, null, null, flags));
 }
예제 #8
0
 /// <summary>
 /// Establishes an FTP connection to the specified server.
 /// </summary>
 /// <param name="serverName">Name of the server to which to connect.</param>
 /// <param name="username">The username to use for authentication.</param>
 /// <param name="password">The password to use for authentication.</param>
 /// <param name="flags">The connection flags.</param>
 /// <returns>An established FTP connection to the specified server.</returns>
 public FtpHandle ConnectFtp(string serverName, string username, string password, InternetConnectHandle.Flags flags)
 {
     return(new FtpHandle(this, serverName, 0, username, password, flags));
 }
예제 #9
0
        /// <summary>
        /// Establishes a connection to the specified server.
        /// </summary>
        /// <param name="serverName">Name of the server to which to connect.</param>
        /// <param name="serverPort">The server port to which to connect.</param>
        /// <param name="username">The username to use for authentication.</param>
        /// <param name="password">The password to use for authentication.</param>
        /// <param name="service">The service type to which to connect.</param>
        /// <param name="flags">The connection flags.</param>
        /// <returns>An established internet connection to the specified server.</returns>
        public InternetConnectHandle Connect(string serverName, int serverPort, string username, string password, InternetConnectHandle.Service service, InternetConnectHandle.Flags flags)
        {
            switch (service)
            {
            case InternetConnectHandle.Service.Ftp:
                return(new FtpHandle(this, serverName, serverPort, username, password, flags));

            case InternetConnectHandle.Service.Gopher:
            case InternetConnectHandle.Service.Http:
            default:
                return(new InternetConnectHandle(this, serverName, serverPort, username, password, service, flags));
            }
        }