• c# 用户名 密码 访问 局域网共享


            #region Ping 返回true则代表可以连接成功
            public bool Ping(string remoteHost)
            {
                bool Flag = false;
                Process proc = new Process();
                try
                {
                    proc.StartInfo.FileName = "cmd.exe";
                    proc.StartInfo.UseShellExecute = false;
                    proc.StartInfo.RedirectStandardInput = true;
                    proc.StartInfo.RedirectStandardOutput = true;
                    proc.StartInfo.RedirectStandardError = true;
                    proc.StartInfo.CreateNoWindow = true;
                    proc.Start();
                    string dosLine = @"ping -n 1 " + remoteHost;
                    proc.StandardInput.WriteLine(dosLine);
                    proc.StandardInput.WriteLine("exit");
                    while (!proc.HasExited)
                    {
                        proc.WaitForExit(500);
                    }
                    string pingResult = proc.StandardOutput.ReadToEnd().Replace("Request timed out", "无法访问目标主机");
                    if (pingResult.IndexOf("无法访问目标主机") == -1)
                    {
                        Flag = true;
                    }
                    proc.StandardOutput.Close();
    
                }
                catch (Exception ex)
                {
                }
                finally
                {
                    proc.Close();
                    proc.Dispose();
                }
                return Flag;
            }
            #endregion
    

      

            #region Connect 连接局域网 返回true则代表可以连接成功
            public bool Connect(string remoteHost, string userName, string passWord)
            {
                bool Flag = false;
                Process proc = new Process();
                try
                {
                    proc.StartInfo.FileName = "cmd.exe";
                    proc.StartInfo.UseShellExecute = false;
                    proc.StartInfo.RedirectStandardInput = true;
                    proc.StartInfo.RedirectStandardOutput = true;
                    proc.StartInfo.RedirectStandardError = true;
                    proc.StartInfo.CreateNoWindow = true;
                    proc.Start();
                    proc.StandardInput.WriteLine("net use * /del /y");  //中断开所有连接
                    string dosLine = @"net use \" + remoteHost + " " + passWord + " " + " /user:" + userName + ">NUL";
                    proc.StandardInput.WriteLine(dosLine);
                    proc.StandardInput.WriteLine("exit");
                    while (!proc.HasExited)
                    {
                        proc.WaitForExit(1000);
                    }
                    string errormsg = proc.StandardError.ReadToEnd();
                    proc.StandardError.Close();
                    if (String.IsNullOrEmpty(errormsg))
                    {
                        Flag = true;
                    }
                }
                catch (Exception ex)
                { }
                finally
                {
                    proc.Close();
                    proc.Dispose();
                }
                return Flag;
            }
            #endregion
    

      

  • 相关阅读:
    Ubuntu之修改用户名和主机名
    HM中CU,TU的划分
    BZOJ 3237([Ahoi2013]连通图-cdq图重构-连通性缩点)
    Introducing Regular Expressions 学习笔记
    kubuntu添加windows字体
    WISE安装程序增加注册控制
    Linux内核中常见内存分配函数(一)
    Linux内核中常见内存分配函数(二)
    Swift现实
    Android 5.0(L) ToolBar(替代ActionBar) 现实(四)
  • 原文地址:https://www.cnblogs.com/0754ydj/p/4256615.html
Copyright © 2020-2023  润新知