C#中如何擷取系統內容變數

來源:互聯網
上載者:User

C#中擷取系統內容變數需要用到Environment Class。其中提供了有關當前環境和平台的資訊以及操作它們的方法。該類不能被繼承。

 

以下代碼得到%systemdrive%的值,即“C:”

string sPath = Environment.GetEnvironmentVariable("systemdrive")

string sPath = Environment.GetEnvironmentVariable("systemdrive");Console.WriteLine(sPath);//C:

以下是MSDN上Environment Class的Sample code。

http://msdn.microsoft.com/en-us/library/system.environment.aspx
 

以下代碼列出了當前系統的環境資訊。

// Sample for Environment class summaryusing System;using System.Collections;class Sample {    public static void Main()     {    String str;    String nl = Environment.NewLine;//    Console.WriteLine();    Console.WriteLine("-- Environment members --");//  Invoke this sample with an arbitrary set of command line arguments.    Console.WriteLine("CommandLine: {0}", Environment.CommandLine);    String[] arguments = Environment.GetCommandLineArgs();    Console.WriteLine("GetCommandLineArgs: {0}", String.Join(", ", arguments));//  <-- Keep this information secure! -->    Console.WriteLine("CurrentDirectory: {0}", Environment.CurrentDirectory);    Console.WriteLine("ExitCode: {0}", Environment.ExitCode);    Console.WriteLine("HasShutdownStarted: {0}", Environment.HasShutdownStarted);//  <-- Keep this information secure! -->    Console.WriteLine("MachineName: {0}", Environment.MachineName);    Console.WriteLine("NewLine: {0}  first line{0}  second line{0}  third line",                          Environment.NewLine);    Console.WriteLine("OSVersion: {0}", Environment.OSVersion.ToString());    Console.WriteLine("StackTrace: '{0}'", Environment.StackTrace);//  <-- Keep this information secure! -->    Console.WriteLine("SystemDirectory: {0}", Environment.SystemDirectory);    Console.WriteLine("TickCount: {0}", Environment.TickCount);//  <-- Keep this information secure! -->    Console.WriteLine("UserDomainName: {0}", Environment.UserDomainName);    Console.WriteLine("UserInteractive: {0}", Environment.UserInteractive);//  <-- Keep this information secure! -->    Console.WriteLine("UserName: {0}", Environment.UserName);    Console.WriteLine("Version: {0}", Environment.Version.ToString());    Console.WriteLine("WorkingSet: {0}", Environment.WorkingSet);//  No example for Exit(exitCode) because doing so would terminate this example.//  <-- Keep this information secure! -->    String query = "My system drive is %SystemDrive% and my system root is %SystemRoot%";    str = Environment.ExpandEnvironmentVariables(query);    Console.WriteLine("ExpandEnvironmentVariables: {0}  {1}", nl, str);    Console.WriteLine("GetEnvironmentVariable: {0}  My temporary directory is {1}.", nl,                           Environment.GetEnvironmentVariable("TEMP"));    Console.WriteLine("GetEnvironmentVariables: ");    IDictionaryenvironmentVariables = Environment.GetEnvironmentVariables();    foreach (DictionaryEntry de in environmentVariables)        {        Console.WriteLine("  {0} = {1}", de.Key, de.Value);        }    Console.WriteLine("GetFolderPath: {0}",                  Environment.GetFolderPath(Environment.SpecialFolder.System));    String[] drives = Environment.GetLogicalDrives();    Console.WriteLine("GetLogicalDrives: {0}", String.Join(", ", drives));    }}/*This example produces results similar to the following:(Any result that is lengthy or reveals information that should remain secure has been omitted and marked "!---OMITTED---!".)C:\>env0 ARBITRARY TEXT-- Environment members --CommandLine: env0 ARBITRARY TEXTGetCommandLineArgs: env0, ARBITRARY, TEXTCurrentDirectory: C:\Documents and Settings\!---OMITTED---!ExitCode: 0HasShutdownStarted: FalseMachineName: !---OMITTED---!NewLine:  first line  second line  third lineOSVersion: Microsoft Windows NT 5.1.2600.0StackTrace: '   at System.Environment.GetStackTrace(Exception e)   at System.Environment.GetStackTrace(Exception e)   at System.Environment.get_StackTrace()   at Sample.Main()'SystemDirectory: C:\WINNT\System32TickCount: 17995355UserDomainName: !---OMITTED---!UserInteractive: TrueUserName: !---OMITTED---!Version: !---OMITTED---!WorkingSet: 5038080ExpandEnvironmentVariables:  My system drive is C: and my system root is C:\WINNTGetEnvironmentVariable:  My temporary directory is C:\DOCUME~1\!---OMITTED---!\LOCALS~1\Temp.GetEnvironmentVariables:   !---OMITTED---!GetFolderPath: C:\WINNT\System32GetLogicalDrives: A:\, C:\, D:\*/

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.