项目发布到服务器后怎么获取本地计算机名,  内网的程序
 以下方法我都试了不行:
         //Request.ServerVariables["LOGON_USER"]     //为空
        //Page.Request.UserHostName                 //IP
        //Request.ServerVariables["REMOTE_HOST"]    //IP
        //Request.ServerVariables["AUTH_USER"]      //为空
        //Dns.GetHostName()                 //服务器名
        //HttpContext.Current.Request.LogonUserIdentity.Name    服务器名
        //System.Net.Dns.GetHostName();     //服务器名
        //System.Environment.MachineName    //服务器名
求助大虾!!!!!!!!!!!!!!

解决方案 »

  1.   

    http://zhidao.baidu.com/question/88341080.html
      

  2.   

    http://blog.csdn.net/mh942408056/article/details/7031627
    这个网站试一下!
      

  3.   

    我见过一个 你看看
    在page_load里面写
       Label1.Text = "服务器名称:" + Server.MachineName;//服务器名称   
            Label2.Text = "服务器IP地址:" + Request.ServerVariables["LOCAL_ADDR"];//服务器IP地址   
            Label3.Text = "服务器域名:" + Request.ServerVariables["SERVER_NAME"];//服务器域名    
            Label4.Text = ".NET解释引擎版本:" + ".NET CLR" + Environment.Version.Major + "." + Environment.Version.Minor + "." + Environment.Version.Build + "." + Environment.Version.Revision;//.NET解释引擎版本    
            Label5.Text = "服务器操作系统版本:" + Environment.OSVersion.ToString();//服务器操作系统版本    
            Label6.Text = "服务器IIS版本:" + Request.ServerVariables["SERVER_SOFTWARE"];//服务器IIS版本    
            Label7.Text = "HTTP访问端口:" + Request.ServerVariables["SERVER_PORT"];//HTTP访问端口    
            Label8.Text = "虚拟目录的绝对路径:" + Request.ServerVariables["APPL_RHYSICAL_PATH"];//虚拟目录的绝对路径    
            Label9.Text = "执行文件的绝对路径:" + Request.ServerVariables["PATH_TRANSLATED"];//执行文件的绝对路径    
            Label10.Text = "虚拟目录Session总数:" + Session.Contents.Count.ToString();//虚拟目录Session总数    
            Label11.Text = "虚拟目录Application总数:" + Application.Contents.Count.ToString();//虚拟目录Application总数    
            Label12.Text = "域名主机:" + Request.ServerVariables["HTTP_HOST"];//域名主机    
            Label13.Text = "服务器区域语言:" + Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"];//服务器区域语言    
            Label14.Text = "用户信息:" + Request.ServerVariables["HTTP_USER_AGENT"];
            Label14.Text = "CPU个数:" + Environment.GetEnvironmentVariable("NUMBER_OF_PROCESSORS");//CPU个数    
            Label15.Text = "CPU类型:" + Environment.GetEnvironmentVariable("PROCESSOR_IDENTIFIER");//CPU类型    
            Label16.Text = "进程开始时间:" + GetPrStart();//进程开始时间    
            Label17.Text = "AspNet 内存占用:" + GetAspNetN();//AspNet 内存占用    
            Label18.Text = "AspNet CPU时间:" + GetAspNetCpu();//AspNet CPU时间    
            Label19.Text = "FSO 文本文件读写:" + Check("Scripting.FileSystemObject");//FSO 文本文件读写    
            Label20.Text = "应用程序占用内存" + GetServerAppN();//应用程序占用内存    
        }    #region 获取服务器系统信息
        /// <summary>  
        /// 应用程序占用内存   
        /// </summary>  
        /// <returns></returns>  
        private string GetServerAppN()
        {
            string temp;
            try
            {
                temp = ((Double)GC.GetTotalMemory(false) / 1048576).ToString("N2") + "M";
            }
            catch
            {
                temp = "未知";
            }
            return temp;    }    /// <summary>  
        /// AspNet 内存占用  
        /// </summary>  
        /// <returns></returns>  
        private string GetAspNetN()
        {
            string temp;
            try
            {
                temp = ((Double)System.Diagnostics.Process.GetCurrentProcess().WorkingSet64 / 1048576).ToString("N2") + "M";
            }
            catch
            {
                temp = "未知";
            }
            return temp;
        }    /// <summary>  
        /// AspNet CPU时间  
        /// </summary>  
        /// <returns></returns>  
        private string GetAspNetCpu()
        {
            string temp;
            try
            {
                temp = ((TimeSpan)System.Diagnostics.Process.GetCurrentProcess().TotalProcessorTime).TotalSeconds.ToString("N0");
            }
            catch
            {
                temp = "未知";
            }
            return temp;
        }    /// <summary>  
        /// 进程开始时间   
        /// </summary>  
        /// <returns></returns>  
        private string GetPrStart()
        {
            string temp;
            try
            {
                temp = System.Diagnostics.Process.GetCurrentProcess().StartTime.ToString();
            }
            catch
            {
                temp = "未知";
            }
            return temp;
        }    /// <summary>  
        /// FSO 文本文件读写  
        /// </summary>  
        /// <param name="obj"></param>  
        /// <returns></returns>  
        private string Check(string obj)
        {
            try
            {
                object claobj = Server.CreateObject(obj);
                return "支持";
            }
            catch
            {
                return "不支持";
            }
        }
        #endregion
      

  4.   

    获取客户端计算机名???
    这个没有权限吧?除非在客户端安装ActiveX
      

  5.   

    请记住,你的asp.net程序永远通过浏览器执行的,WebForm和WinForm有着本质的区别,Asp.net在客户端就是HTML
      

  6.   

    那web的怎么获取客户端的计算机名和IP地址了?
      

  7.   


    <script type="text/jscript" language="JScript">
            try {
                var objNetWork = new ActiveXObject("WScript.Network")            if (objNetWork != null && objNetWork != undefined) {
                    alert(unescape(objNetWork.UserName));
                    alert(unescape(objNetWork.ComputerName));
                }            objNetWork = null
            }
            catch (e)
            { }
     </script>
     用JS先提取计算机名到textbox中,再用整体页面的鼠标移动事件ajax返回到数据库中不知道是否可行。
      

  8.   

    B/S获取不到客户端的,你获取的是你服务器的信息,除非你写个activex插件
      

  9.   

    activex插件 这个怎么写??????
      

  10.   

    http://www.cnblogs.com/yilin/archive/2009/09/15/1567332.html很详细
      

  11.   

    必须要安装 activex插件 才能获取到客户端的电脑名吗?????
      

  12.   

    //如果是局域网,且你的网络内,dns wins 都已经配置好可以用dns.GetHostByAddress
      

  13.   


    string strClient = System.Web.HttpContext.Current.User.Identity.Name.Trim();