C# .NET 获取网络适配器信息和路径信息
C# .NET 获取网络适配器信息
1:NetworkInterface 类:
该类位于 System.Net.NetworkInformation 命名空间
该类可以方便的检测本机有多少个网卡(网络适配器),网卡信息,哪些网络连接可用等。
2:常用方法和属性:
using System.Net.NetworkInformation; namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();//获取本地计算机上网络接口的对象
Console.WriteLine("适配器个数:" + adapters.Length);
Console.WriteLine();
foreach (NetworkInterface adapter in adapters)
{
Console.WriteLine("描述:" + adapter.Description);
Console.WriteLine("标识符:" + adapter.Id);
Console.WriteLine("名称:" + adapter.Name);
Console.WriteLine("类型:" + adapter.NetworkInterfaceType);
Console.WriteLine("速度:" + adapter.Speed * 0.001 * 0.001 + "M");
Console.WriteLine("操作状态:" + adapter.OperationalStatus);
Console.WriteLine("MAC 地址:" + adapter.GetPhysicalAddress()); // 格式化显示MAC地址
PhysicalAddress pa = adapter.GetPhysicalAddress();//获取适配器的媒体访问(MAC)地址
byte[] bytes = pa.GetAddressBytes();//返回当前实例的地址
StringBuilder sb = new StringBuilder();
for (int i = ; i < bytes.Length; i++)
{
sb.Append(bytes[i].ToString("X2"));//以十六进制格式化
if (i != bytes.Length - )
{
sb.Append("-");
}
}
Console.WriteLine("MAC 地址:" + sb);
Console.WriteLine();
}
Console.ReadKey();
}
}
}
C# .NET 获取路径信息
Application.StartupPath // 获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。 Application.ExecutablePath // 获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。 AppDomain.CurrentDomain.BaseDirectory // 获取基目录,它由程序集冲突解决程序用来探测程序集。 Thread.GetDomain().BaseDirectory // 获取基目录,它由程序集冲突解决程序用来探测程序集。 Environment.CurrentDirectory // 获取或设置当前工作目录的完全限定路径。 Directory.GetCurrentDirectory() // 获取应用程序的当前工作目录。 Assembly.GetExecutingAssembly().Location // 获取包含清单的已加载文件的路径或 UNC 位置。
通过Request属性获取: // 获取当前正在执行的服务器应用程序的根目录的物理文件系统路径。
Request.PhysicalApplicationPath; // E:\解决方案\项目\
// 获取与请求的 URL 相对应的物理文件系统路径。
Request.PhysicalPath; // E:\\解决方案\项目\zz\zz.aspx
获取虚拟路径和URL信息:(URL:http://localhost/aspnet/zz/zz.aspx/info?name=wk ) // 获取服务器上 ASP.NET 应用程序的虚拟应用程序根路径:/
Request.ApplicationPath;// /aspnet // 获取应用程序根的虚拟路径,并通过对应用程序根使用波形符 (~) 表示法使该路径成为相对路径。
Request.AppRelativeCurrentExecutionFilePath; // ~/zz/zz.aspx // 获取当前请求的虚拟路径
Request.CurrentExecutionFilePath;// /aspnet/zz/zz.aspx
Request.FilePath;// /aspnet/zz/zz.aspx // 获取CurrentExecutionFilePath属性中指定的文件名的扩展名。
Request.CurrentExecutionFilePathExtension; // .aspx // 获取当前请求的虚拟路径(包括附件路径信息)
Request.Path;// /aspnet/zz/zz.aspx/info // 获取具有 URL 扩展名的资源的附加路径信息。
Request.PathInfo; // /info // 获取有关当前请求的 URL 的信息。
Request.Url;// http://localhost/aspnet/zz/zz.aspx/inf?name=wk // 获取当前请求的原始 URL
Request.RawUrl; // /aspnet/zz/zz.aspx/inf?name=wk // 获取有关客户端上次请求的 URL 的信息,该请求链接到当前的 URL。
Request.UrlReferrer;// System.Uri
C# .NET 获取网络适配器信息和路径信息的更多相关文章
- 获取Request请求的路径信息
从Request对象中可以获取各种路径信息,以下例子: 假设请求的页面是index.jsp,项目是WebDemo,则在index.jsp中获取有关request对象的各种路径信息如下 String p ...
- 动态获取jar文件的路径
下面专门封装了一个类来处理: import java.io.File; /** * 获取打包后jar的路径信息 * @author Administrator * 2011-01-16 13:53 ...
- vc++基础班[24]---系统各种路径信息的获取
vc++基础班[24]---系统各种路径信息的获取 ------------------------------------------ Begin ------------------------- ...
- C# 对包含文件或目录路径信息的 System.String 实例执行操作
在字符串操作中有一类比较特殊的操作,就是对包含文件或目录路径信息的 System.String 实例执行操作.比如根据一个表示路径的字符串获取其代表的文件名称.文件夹路径.文件扩展名等.在很多时候,我 ...
- Android中获取应用程序(包)的信息----PackageManager
本节内容是如何获取Android系统中应用程序的信息,主要包括packagename.label.icon.占用大小等.具体分为两个 部分,计划如下: 第一部分: 获取应用程序的packagena ...
- 重新想象 Windows 8 Store Apps (30) - 信息: 获取包信息, 系统信息, 硬件信息, PnP信息, 常用设备信息
原文:重新想象 Windows 8 Store Apps (30) - 信息: 获取包信息, 系统信息, 硬件信息, PnP信息, 常用设备信息 [源码下载] 重新想象 Windows 8 Store ...
- iOS学习——获取iOS设备的各种信息
不管是在Android开发还是iOS开发过程中,有时候我们需要经常根据设备的一些状态或信息进行不同的设置和性能配置,例如横竖屏切换时,电池电量低时,内存不够时,网络切换时等等,我们在这时候需要进行一些 ...
- PHP怎么获取系统信息和服务器详细信息
https://zhidao.baidu.com/question/1435990326608475859.html 获取系统类型及版本号: php_uname() (例:Windows NT COM ...
- js获取当前页面的url网址信息小汇总
在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结. 下面我们举例一个URL,然后获得它的各个组成部分:http://i.cnblog ...
随机推荐
- int、long、long long取值范围
unsigned int 0-4294967295 int -2147483648-2147483647 unsigned long 0-4294967295 long -214748 ...
- openjudge-NOI 2.5-1756 八皇后
题目链接:http://noi.openjudge.cn/ch0205/1756/ 题解: 上一道题稍作改动…… #include<cstdio> #include<algorith ...
- HTTP之一 If-Modified-Since & If-None-Match
If-Modified-Since & If-None-MatchIf-Modified-Since,和 Last-Modified 一样都是用于记录页面最后修改时间的 HTTP 头信息,只是 ...
- 缓存数据库-redis数据类型和操作(sorted set)
一:Redis 有序集合(sorted set) Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员. 不同的是每个元素都会关联一个double类型的分数.redis正是 ...
- wpf 在Popup内的TextBox 输入法 不能切换
切换输入法 输入不了中文 [DllImport("User32.dll")] public static extern IntPtr SetFocus(IntPtr hWnd); ...
- 关于UrlEncode 一团乱麻的问题,后续彻底理解。Java中的 URLEncoder 与 URLDecoder无bug
很多开放平台都是小白开发的,对这个urlencode理解的不到位,他们总是认为java官方的urlencode有bug,需要 URLEncoder.encode("Hello World&q ...
- JAVA复习笔记之多线程并发
前言:多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,还是值得深入研究一下 概念: 1 线程:进程中负责程序执行的执行单元线程本身依靠程序进行运行线程是程序中的顺序控制流,只能使用 ...
- ZooKeeper的典型应用场景
<从Paxos到Zookeeper 分布式一致性原理与实践>读书笔记 本文:总结脑图地址:脑图 前言 所有的典型应用场景,都是利用了ZK的如下特性: 强一致性:在高并发情况下,能够保证节点 ...
- Centos之文件搜索命令locate
locate命令 locate 文件名 在后台数据库中按文件名搜索,搜索速度更快 /var/lib/mlocate #locate命令所搜索的后台数据库 updatedb 更新数据库 locate搜索 ...
- es6之yield
yield 关键字用来暂停和继续一个生成器函数.我们可以在需要的时候控制函数的运行. yield 关键字使生成器函数暂停执行,并返回跟在它后面的表达式的当前值.与return类似,但是可以使用next ...