Example #1
0
        public string GetPassword(string username)
        {
            FtpUserInfo userinfo = con.FtpUserList[username];

            if (userinfo != null)
            {
                return(userinfo.Password);
            }
            return(null);
        }
Example #2
0
        /// <summary>
        /// 返回0则不限制
        /// </summary>
        /// <returns></returns>
        public string GetFtpMaxUsersCount(string username)
        {
            FtpUserInfo userinfo     = con.FtpUserList[username];
            string      maxUserCount = null;

            if (userinfo != null)
            {
                maxUserCount = userinfo.PropertyList["MaxNrUsers"].ToString();
            }
            return(maxUserCount);
        }
Example #3
0
        /// <summary>
        /// 修改账户密码
        /// </summary>
        /// <param name="username">用户名</param>
        /// <param name="newpassword">密码</param>
        /// <returns></returns>
        public bool ChangePassword(string username, string newpassword)
        {
            FtpUserInfo userinfo = con.FtpUserList[username];

            if (userinfo != null)
            {
                userinfo.Password = newpassword;
                con.SaveIni();
                return(true);
            }
            return(false);
        }
Example #4
0
        /// <summary>
        /// 限制上传速度
        /// </summary>
        /// <param name="username">用户名</param>
        /// <param name="limitByte">速度,单位字节</param>
        /// <returns></returns>
        public bool SpeedLimitUp(string username, long limitByte)
        {
            FtpUserInfo userinfo = con.FtpUserList[username];

            if (userinfo != null)
            {
                userinfo.PropertyList["SpeedLimitUp"] = limitByte.ToString();
                con.SaveIni();
                return(true);
            }
            return(false);
        }
Example #5
0
        /// <summary>
        /// 创建账户
        /// </summary>
        /// <param name="username">用户名</param>
        /// <param name="password">密码</param>
        /// <param name="HomeDir">主目录</param>
        /// <param name="Access">权限</param>
        /// <returns></returns>
        public bool CreateUser(string username, string password, string HomeDir, string Access = "WLP" /*默认为WLP,具体写法请参见serv-u配置文件说明*/)
        {
            if (!con.FtpUserList.ContainsKey(username))
            {
                HomeDir = XMLHelper.getAppSettingValue("FTP_Home") + "\\" + HomeDir;
                if (!Directory.Exists(HomeDir))
                {
                    Directory.CreateDirectory(HomeDir);
                }
                FtpUserInfo userinfo = new FtpUserInfo();
                userinfo.UserName = username;
                userinfo.Password = password;
                PropertyControl pc = userinfo.PropertyList;
                pc.Add("TimeOut", "600");
                pc.Add("RelPaths", "1");
                pc.Add("MaxUsersLoginPerIP", "1");
                pc.Add("HomeDir", HomeDir);
                pc.Add("MaxNrUsers", "1");
                pc.Add("Access1", HomeDir + "|" + Access);
                con.FtpUserList.Add(username, userinfo);
                con.SaveIni();

                if (!File.Exists(HomeDir + "\\上传的光盘文件命名请包含正确的ISBN和光盘条码.txt"))
                {
                    File.Create(@HomeDir + "\\上传的光盘文件命名请包含正确的ISBN和光盘条码!.txt");
                }
                //if (!File.Exists(@HomeDir + "\\请尽量避免光盘文件名包含中文.txt")) { File.Create(@HomeDir + "\\请尽量避免光盘文件名包含中文.txt"); }


                return(true);
            }
            else
            {
                return(false);
            }
        }
Example #6
0
        /// <summary>
        /// 设置最大用户数
        /// </summary>
        /// <param name="maxUserCount"></param>
        public bool SetFtpMaxUsersCount(string username, string maxUserCount)
        {
            FtpUserInfo userinfo = con.FtpUserList[username];
            bool        IsSet    = false;

            if (userinfo != null)
            {
                if (!String.IsNullOrEmpty(maxUserCount))
                {
                    try
                    {
                        int check = Convert.ToInt16(maxUserCount);
                        if (check >= 1)
                        {
                            userinfo.PropertyList["MaxNrUsers"] = maxUserCount;
                            con.SaveIni();
                            IsSet = true;
                        }
                    }
                    catch { }
                }
            }
            return(IsSet);
        }