Пример #1
0
        /// <summary>
        /// 构造函数(适用于访问UNC地址)
        /// </summary>
        /// <param name="storeRootPath">UNC共享目录</param>
        /// <param name="directlyRootUrl">直连地址根路径</param>
        /// <param name="username">访问UNC地址的用户名</param>
        /// <param name="password">访问UNC地址的密码</param>
        public DefaultStoreProvider(string storeRootPath, string directlyRootUrl, string username, string password)
            : this(storeRootPath, directlyRootUrl)
        {
            NetworkShareAccesser networkShareAccesser = new NetworkShareAccesser(storeRootPath, username, password);

            networkShareAccesser.Disconnect();
            networkShareAccesser.Connect();
        }
Пример #2
0
        /// <summary>
        /// 创建一个网络连接
        /// </summary>
        public void Connect()
        {
            NetResource netResource = new NetResource()
            {
                Scope        = ResourceScope.GlobalNetwork,
                ResourceType = ResourceType.Disk,
                DisplayType  = ResourceDisplayType.Share
            };
            string str = this.uncName;

            char[] chrArray = new char[] { '\\' };
            netResource.RemoteName = str.TrimEnd(chrArray);
            NetResource netResource1 = netResource;
            int         num          = NetworkShareAccesser.WNetAddConnection2(netResource1, this.password, this.username, 0);

            if (num != 0)
            {
                throw new Win32Exception(num);
            }
        }
Пример #3
0
 /// <summary>
 /// 释放一个网络连接
 /// </summary>
 public void Disconnect()
 {
     NetworkShareAccesser.WNetCancelConnection2(this.uncName, 0, true);
 }