C# Environment类_获取程序所在机器信息
一、属性
CommandLine 获取该进程的命令行。
CurrentDirectory 获取或设置当前工作目录的完全限定路径。
ExitCode 获取或设置进程的退出代码。
HasShutdownStarted 获取一个值,该值指示公共语言运行时 (CLR) 是否正在关闭。
Is64BitOperatingSystem 确定当前操作系统是否为 64 位操作系统。
Is64BitProcess 确定当前进程是否为 64 位进程。
MachineName 获取此本地计算机的 NetBIOS 名称。
NewLine 获取为此环境定义的换行字符串。
OSVersion 获取包含当前平台标识符和版本号的 OperatingSystem 对象。
ProcessorCount 获取当前计算机上的处理器数。
StackTrace 获取当前的堆栈跟踪信息。
SystemDirectory 获取系统目录的完全限定路径。
SystemPageSize 获取操作系统的页面文件的内存量。
TickCount 获取系统启动后经过的毫秒数。
UserDomainName 获取与当前用户关联的网络域名。
UserInteractive 获取一个值,用以指示当前进程是否在用户交互模式中运行。
UserName 获取当前已登录到 Windows 操作系统的人员的用户名。
Version 获取一个 Version 对象,该对象描述公共语言运行时的主版本、次版本、内部版本和修订号。
WorkingSet 获取映射到进程上下文的物理内存量。
示例:

class Program
{
static void Main(string[] args)
{
Console.WriteLine(Environment.WorkingSet); //输出 15806464 Version version = Environment.Version;
Console.WriteLine(version.Build); //输出 30319
Console.WriteLine(Environment.UserName); //输出 Administrator 获取当前Windows系统的用户名
Console.WriteLine(Environment.UserInteractive); //输出 True 获取一个值,用以指示当前进程是否在用户交互模式中运行。
Console.WriteLine(Environment.UserDomainName); //输出 KISSDODOG-PC 获取与当前用户关联的网络域名。
Console.WriteLine(Environment.TickCount); //输出 33445319 系统启动后经过的毫秒数
Console.WriteLine(Environment.TickCount / 1000 / 60); //我靠,启动了558分钟了
Console.WriteLine(Environment.SystemPageSize); //输出 4096 获取操作系统的页面文件的内存量(单位字节)。
Console.WriteLine(Environment.SystemDirectory); //输出 C:\Windows\system32 获取系统目录的完全限定路径。
Console.WriteLine(Environment.StackTrace); //输出 跟错误信息差不多,都是在xxx位置,等等这些信息,目前还看不懂 获取当前的堆栈跟踪信息。
Console.WriteLine(Environment.ProcessorCount); //输出 2 输出当前计算机的CPU内核数 双核,没错 OperatingSystem os = Environment.OSVersion;
Console.WriteLine(os); //输出 获取包含当前操作系统平台标识符和版本号的 OperatingSystem 对象。 Console.WriteLine(Environment.NewLine); //输出 换行符 获取为此环境定义的换行字符串。
Console.WriteLine(Environment.MachineName); //输出 KISSDODOG-PC 获取此本地计算机的 NetBIOS 名称。 Console.WriteLine(Environment.Is64BitOperatingSystem); //输出 False 确定当前操作系统是否为 64 位操作系统。
Console.WriteLine(Environment.Is64BitProcess); //输出 False 确定当前进程是否为 64 位进程。 Console.WriteLine(Environment.HasShutdownStarted); //输出 False 指示公共语言运行时CLR是否正在关闭 Console.WriteLine(Environment.ExitCode); //输出 0 获取或设置进程的退出代码。 Console.WriteLine(Environment.CurrentDirectory); //输出 C:\Users\Administrator\Desktop\ConsoleApplication1\ConsoleApplication1\bin\Debug 获取或设置当前工作目录的完全限定路径。 Console.WriteLine(Environment.CommandLine); //输出 "C:\Users\Administrator\Desktop\ConsoleApplication1\ConsoleApplication1\bin\Debug\ConsoleApplication1.vshost.exe" 获取该进程的命令行 File.WriteAllText(@"D:\123.txt", Environment.CommandLine); //输出 Microsoft Windows NT 6.1.7600.0 Console.ReadKey();
}
}

二、方法
Exit 终止此进程并为基础操作系统提供指定的退出代码。
ExpandEnvironmentVariables 将嵌入到指定字符串中的每个环境变量的名称替换为该变量的值的等效字符串,然后返回结果字符串。
FailFast(String) 向 Windows 的应用程序事件日志写入消息后立即终止进程,然后在发往 Microsoft 的错误报告中加入该消息。
FailFast(String, Exception) 向 Windows 的应用程序事件日志写入消息后立即终止进程,然后在发往 Microsoft 的错误报告中加入该消息和异常信息。
GetCommandLineArgs 返回包含当前进程的命令行参数的字符串数组。
GetEnvironmentVariable(String) 从当前进程检索环境变量的值。
GetEnvironmentVariable(String, EnvironmentVariableTarget) 从当前进程或者从当前用户或本地计算机的 Windows 操作系统注册表项检索环境变量的值。
GetEnvironmentVariables() 从当前进程检索所有环境变量名及其值。
GetEnvironmentVariables(EnvironmentVariableTarget) 从当前进程或者从当前用户或本地计算机的 Windows 操作系统注册表项检索所有环境变量名及其值。
GetFolderPath(Environment.SpecialFolder) 获取由指定枚举标识的系统特殊文件夹的路径。
GetFolderPath(Environment.SpecialFolder, Environment.SpecialFolderOption) 获取由指定枚举标识的系统特殊文件夹的路径,并使用用于访问特殊文件夹的指定选项。
GetLogicalDrives 返回包含当前计算机中的逻辑驱动器名称的字符串数组。
SetEnvironmentVariable(String, String) 创建、修改或删除当前进程中存储的环境变量。
SetEnvironmentVariable(String, String, EnvironmentVariableTarget) 创建、修改或删除当前进程中或者为当前用户或本地计算机保留的 Windows 操作系统注册表项中存储的环境变量。

static void Main(string[] args)
{
//Exit 终止此进程并为基础操作系统提供指定的退出代码。
//ExpandEnvironmentVariables 将嵌入到指定字符串中的每个环境变量的名称替换为该变量的值的等效字符串,然后返回结果字符串。
//FailFast(String) 向 Windows 的应用程序事件日志写入消息后立即终止进程,然后在发往 Microsoft 的错误报告中加入该消息。
//FailFast(String, Exception) 向 Windows 的应用程序事件日志写入消息后立即终止进程,然后在发往 Microsoft 的错误报告中加入该消息和异常信息。
//GetCommandLineArgs 返回包含当前进程的命令行参数的字符串数组。
//GetEnvironmentVariable(String) 从当前进程检索环境变量的值。
//GetEnvironmentVariable(String, EnvironmentVariableTarget) 从当前进程或者从当前用户或本地计算机的 Windows 操作系统注册表项检索环境变量的值。
//GetEnvironmentVariables() 从当前进程检索所有环境变量名及其值。
//GetEnvironmentVariables(EnvironmentVariableTarget) 从当前进程或者从当前用户或本地计算机的 Windows 操作系统注册表项检索所有环境变量名及其值。
//GetFolderPath(Environment.SpecialFolder) 获取由指定枚举标识的系统特殊文件夹的路径。
//GetFolderPath(Environment.SpecialFolder, Environment.SpecialFolderOption) 获取由指定枚举标识的系统特殊文件夹的路径,并使用用于访问特殊文件夹的指定选项。
//GetLogicalDrives 返回包含当前计算机中的逻辑驱动器名称的字符串数组。
//SetEnvironmentVariable(String, String) 创建、修改或删除当前进程中存储的环境变量。
//SetEnvironmentVariable(String, String, EnvironmentVariableTarget) 创建、修改或删除当前进程中或者为当前用户或本地计算机保留的 Windows 操作系统注册表项中存储的环境变量。 Console.ReadKey();
}
C# Environment类_获取程序所在机器信息的更多相关文章
- Environment类,获取程序所在机器信息
一.属性 CommandLine 获取该进程的命令行.CurrentDirectory 获取或设置当前工作目录的完全限定路径.ExitCode 获取或设置进程的退出代码.HasShutdownSta ...
- Qt 程序获取程序所在路径、用户目录路径、临时文件夹等特殊路径的方法
Qt 程序获取程序所在路径.用户目录路径.临时文件夹等特殊路径的方法 经常我们的程序中需要访问一些特殊的路径,比如程序所在的路径.用户目录路径.临时文件夹等.在 Qt 中实现这几个功能所用的方法虽然都 ...
- C#获取程序所在的目录
有的时候,我们需要读取程序所在目录下的一些文件,最常见的写法是直接通过".\xxx.file"之类的相对路径来获取文件.虽然这种写法大多数的时候能正确工作,但却又一个很大的隐患:程 ...
- dotnet 获取程序所在路径的方法
在 dotnet 有很多方法可以获取当前程序所在的路径,但是这些方法获取到的路径有一点不相同,特别是在工作路径不是当前的程序所在的路径的时候 通过下面几个方法都可以拿到程序所在的文件夹或程序文件 Ap ...
- delphi根据进程PID获取程序所在路径的函数(用OpenProcess取得句柄,用GetModuleFileNameEx取得程序名)
uses psapi; {根据进程PID获取程序所在路径的函数}function GetProcessExePath(PID: Cardinal): string;varpHandle: THandl ...
- C# WinForm获取程序所在路径方法
多个获取WinForm程序所在文件夹路径的方法,收藏备忘. 1)获取当前进程的完整路径,包含文件名(进程名). 代码:string str =this.GetType().Assembly.Locat ...
- [WinAPI] API 12 [获取程序所在的目录、程序模块路径,获取和设置当前目录]
Windows系统提供一组API实现对程序运行时相关目录的获取和设置.用户可以使用GetCurrentDirectory和SetCurrentDirectory获取程序的当前目录,获取模块的路径使用G ...
- 使用scanner工具类来获取用户输入的信息
使用scanner工具类来获取用户输入的成绩信息. 步骤:1.导入java.util.Scanner包 2.创建Scanner对象 3.接受并保存用户输入的值 例子:通过用户输入来获取学生成绩 pac ...
- asp.net C#获取程序文件相关信息
代码如下 复制代码 using System.Reflection;using System.Runtime.CompilerServices; //// 有关程序集的常规信息是通过下列// 属性集控 ...
随机推荐
- java classpath import package 机制 @Java的ClassPath, Package和Jar
java classpath import package 机制 從一個簡單的例子談談package與import機制 基本原則:為什麼需要將Java文件和類文件切實安置到其所歸屬之Package ...
- linux环境c++开发:ubuntu12.04使用llvm3.4.2
什么是 clang/llvm/libc++[1] clang 是最近几年(在大财主苹果的支持下)发展得非常好的 C 家族语言 (包括C/C++/Obj-C/Obj-C++) 编译器前端,所谓前端,就是 ...
- mysqli connect database and print
<?php $connect = mysqli_connect('localhost','root','','intertrading') or die('Unale to connect'); ...
- poj 3045 Cow Acrobats(二分搜索?)
Description Farmer John's N (1 <= N <= 50,000) cows (numbered 1..N) are planning to run away a ...
- Unity 单元测试(NUnit,UnityTestTools)
在软件开发中单元测试是非常重要的一个环节, =.=盘子脸去了几家公司都没有单元测试这个概念. 我们的系统虽然从代码看上是分离的, 在多数情况下都需要依赖于其他模块来运行.(单元测试部分内容教我解决这个 ...
- Android声明和使用权限
Android定义了一种权限方案来保护设备上的资源和功能.例如,在默认情况下,应用程序无法访问联系人列表.拨打电话等.下面就以拨打电话为例介绍一下系统对权限的要求.一般在我们的应用中,如果要用到拨打电 ...
- Subversion安装
一.Subversion介绍 Subversion是一个集中式的信息共享系统.版本库是Subversion的核心部分,是数据的中央仓库.版本库以典型的文件和目录结构形式文件系统树来保存信息.任意数量的 ...
- java获取指定长度随机数(版本1)
获取指定长度随机数,含大小写字母和数字 package org.sw; import java.util.Random; /** * 得到指定位数的随机数 * @author mengzw * @si ...
- 谈谈UIView的几个layout方法-layoutSubviews、layoutIfNeeded、setNeedsLayout...
最近在学习swift做动画,用到constraint的动画,用到layoutIfNeeded就去研究了下UIView的这几个布局的方法. 下面是做得一个动画,下载地址:https://github.c ...
- iOS开发CoreAnimation解读之二——对CALayer的分析
iOS开发CoreAnimation解读之二——对CALayer的分析 一.UIView中的CALayer属性 1.Layer专门负责view的视图渲染 2.自定义view默认layer属性的类 二. ...