天天看點

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();
        }