您的位置:首页 > 其它

获取客户端相关信息

2011-03-10 13:09 197 查看
//添加组件System.Management
using   System.Management;
using   System.Runtime.InteropServices;

[DllImport( "Iphlpapi.dll ")]
private   static   extern   int   SendARP(Int32   dest,   Int32   host,   ref   Int64   mac,   ref   Int32   length);
[DllImport( "Ws2_32.dll ")]
private   static   extern   Int32   inet_addr(string   ip);

protected   void   Page_Load(object   sender,   EventArgs   e)
{
try
{
string   userip   =   Request.UserHostAddress;
Int32   ldest   =   inet_addr(userip);       //目的地的ip
Int32   lhost   =   inet_addr( " ");       //本地服务器的ip
Int64   macinfo   =   new   Int64();
Int32   len   =   6;
int   res   =   SendARP(ldest,   0,   ref       macinfo,   ref       len);
string   mac_src   =   macinfo.ToString( "X ");
if   (mac_src   ==   "0 ")
{
if   (userip   ==   "127.0.0.1 ")
userinfo.Text   =   "正在访问Localhost! ";
else
userinfo.Text   =   "欢迎来自IP为 "   +   userip   +   "的朋友! ";
return;
}
while   (mac_src.Length   <   12)
{
mac_src   =   mac_src.Insert(0,   "0 ");
}
string   mac_dest   =   " ";
for   (int   i   =   0;   i   <   11;   i++)
{
if   (0   ==   (i   %   2))
mac_dest   =   mac_dest.Insert(0,   mac_src.Substring(i,   2));
}
userinfo.Text   =   "欢迎来自IP为 "   +   userip   +   ",MAC地址为 "   +   mac_dest   +   "的朋友! ";
}
catch   (Exception   err)
{
Response.Write(err.Message);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: