Environment Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Innehåller information om och metoder för att manipulera den aktuella miljön och plattformen. Det går inte att ärva den här klassen.
public ref class Environment abstract sealed
public ref class Environment sealed
public static class Environment
public sealed class Environment
[System.Runtime.InteropServices.ComVisible(true)]
public static class Environment
type Environment = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type Environment = class
Public Class Environment
Public NotInheritable Class Environment
- Arv
-
Environment
- Attribut
Exempel
I följande exempel visas en lista med information om den aktuella miljön.
// Sample for Environment class summary
using 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: ");
IDictionary environmentVariables = 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 TEXT
GetCommandLineArgs: env0, ARBITRARY, TEXT
CurrentDirectory: C:\Documents and Settings\!---OMITTED---!
ExitCode: 0
HasShutdownStarted: False
MachineName: !---OMITTED---!
NewLine:
first line
second line
third line
OSVersion: Microsoft Windows NT 5.1.2600.0
StackTrace: ' at System.Environment.GetStackTrace(Exception e)
at System.Environment.GetStackTrace(Exception e)
at System.Environment.get_StackTrace()
at Sample.Main()'
SystemDirectory: C:\WINNT\System32
TickCount: 17995355
UserDomainName: !---OMITTED---!
UserInteractive: True
UserName: !---OMITTED---!
Version: !---OMITTED---!
WorkingSet: 5038080
ExpandEnvironmentVariables:
My system drive is C: and my system root is C:\WINNT
GetEnvironmentVariable:
My temporary directory is C:\DOCUME~1\!---OMITTED---!\LOCALS~1\Temp.
GetEnvironmentVariables:
!---OMITTED---!
GetFolderPath: C:\WINNT\System32
GetLogicalDrives: A:\, C:\, D:\
*/
// Sample for Environment class summary
open System
open System.Collections
let nl = Environment.NewLine
printfn ""
printfn "-- Environment members --"
// Invoke this sample with an arbitrary set of command line arguments.
printfn $"CommandLine: {Environment.CommandLine}"
Environment.GetCommandLineArgs()
|> String.concat ", "
|> printfn "GetCommandLineArgs: %s"
// <-- Keep this information secure! -->
printfn $"CurrentDirectory: {Environment.CurrentDirectory}"
printfn $"ExitCode: {Environment.ExitCode}"
printfn $"HasShutdownStarted: {Environment.HasShutdownStarted}"
// <-- Keep this information secure! -->
printfn $"MachineName: {Environment.MachineName}"
printfn $"NewLine: {nl} first line{nl} second line{nl} third line"
printfn $"OSVersion: {Environment.OSVersion}"
printfn $"StackTrace: '{Environment.StackTrace}'"
// <-- Keep this information secure! -->
printfn $"SystemDirectory: {Environment.SystemDirectory}"
printfn $"TickCount: {Environment.TickCount}"
// <-- Keep this information secure! -->
printfn $"UserDomainName: {Environment.UserDomainName}"
printfn $"UserInteractive: {Environment.UserInteractive}"
// <-- Keep this information secure! -->
printfn $"UserName: {Environment.UserName}"
printfn $"Version: {Environment.Version}"
printfn $"WorkingSet: {Environment.WorkingSet}"
// No example for Exit(exitCode) because doing so would terminate this example.
// <-- Keep this information secure! -->
let query = "My system drive is %SystemDrive% and my system root is %SystemRoot%"
let str = Environment.ExpandEnvironmentVariables query
printfn $"ExpandEnvironmentVariables: {nl} {str}"
printfn $"""GetEnvironmentVariable: {nl} My temporary directory is {Environment.GetEnvironmentVariable "TEMP"}."""
printfn "GetEnvironmentVariables: "
let environmentVariables = Environment.GetEnvironmentVariables()
for de in environmentVariables do
let de = de :?> DictionaryEntry
printfn $" {de.Key} = {de.Value}"
printfn $"GetFolderPath: {Environment.GetFolderPath Environment.SpecialFolder.System}"
Environment.GetLogicalDrives()
|> String.concat ", "
|> printfn "GetLogicalDrives: %s"
// 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 TEXT
// GetCommandLineArgs: env0, ARBITRARY, TEXT
// CurrentDirectory: C:\Documents and Settings\!---OMITTED---!
// ExitCode: 0
// HasShutdownStarted: False
// MachineName: !---OMITTED---!
// NewLine:
// first line
// second line
// third line
// OSVersion: Microsoft Windows NT 5.1.2600.0
// StackTrace: ' at System.Environment.GetStackTrace(Exception e)
// at System.Environment.GetStackTrace(Exception e)
// at System.Environment.get_StackTrace()
// at Sample.Main()'
// SystemDirectory: C:\WINNT\System32
// TickCount: 17995355
// UserDomainName: !---OMITTED---!
// UserInteractive: True
// UserName: !---OMITTED---!
// Version: !---OMITTED---!
// WorkingSet: 5038080
// ExpandEnvironmentVariables:
// My system drive is C: and my system root is C:\WINNT
// GetEnvironmentVariable:
// My temporary directory is C:\DOCUME~1\!---OMITTED---!\LOCALS~1\Temp.
// GetEnvironmentVariables:
// !---OMITTED---!
// GetFolderPath: C:\WINNT\System32
// GetLogicalDrives: A:\, C:\, D:\
' Sample for Environment class summary
Imports System.Collections
Class Sample
Public Shared Sub Main()
Dim str As [String]
Dim nl As [String] = 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)
Dim arguments As [String]() = 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! -->
Dim query As [String] = "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: ")
Dim environmentVariables As IDictionary = Environment.GetEnvironmentVariables()
Dim de As DictionaryEntry
For Each de In environmentVariables
Console.WriteLine(" {0} = {1}", de.Key, de.Value)
Next de
Console.WriteLine("GetFolderPath: {0}", _
Environment.GetFolderPath(Environment.SpecialFolder.System))
Dim drives As [String]() = Environment.GetLogicalDrives()
Console.WriteLine("GetLogicalDrives: {0}", [String].Join(", ", drives))
End Sub
End Class
'
'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 TEXT
'GetCommandLineArgs: env0, ARBITRARY, TEXT
'CurrentDirectory: C:\Documents and Settings\!---OMITTED---!
'ExitCode: 0
'HasShutdownStarted: False
'MachineName: !---OMITTED---!
'NewLine:
' first line
' second line
' third line
'OSVersion: Microsoft Windows NT 5.1.2600.0
'StackTrace: ' at System.Environment.GetStackTrace(Exception e)
' at System.Environment.GetStackTrace(Exception e)
' at System.Environment.get_StackTrace()
' at Sample.Main()'
'SystemDirectory: C:\WINNT\System32
'TickCount: 17995355
'UserDomainName: !---OMITTED---!
'UserInteractive: True
'UserName: !---OMITTED---!
'Version: !---OMITTED---!
'WorkingSet: 5038080
'ExpandEnvironmentVariables:
' My system drive is C: and my system root is C:\WINNT
'GetEnvironmentVariable:
' My temporary directory is C:\DOCUME~1\!---OMITTED---!\LOCALS~1\Temp.
'GetEnvironmentVariables:
' !---OMITTED---!
'GetFolderPath: C:\WINNT\System32
'GetLogicalDrives: A:\, C:\, D:\
'
Kommentarer
Environment Använd klassen för att hämta information som kommandoradsargument, slutkod, miljövariabelinställningar, innehållet i anropsstacken, tid sedan den senaste systemstarten och versionen av den vanliga språkkörningen.
Egenskaper
| Name | Description |
|---|---|
| CommandLine |
Hämtar kommandoraden för den här processen. |
| CpuUsage |
Hämta CPU-användningen, inklusive den processtid som ägnas åt att köra programkoden, processtiden som ägnas åt att köra operativsystemkoden och den totala tid som ägnas åt att köra både program- och operativsystemkoden. |
| CurrentDirectory |
Hämtar eller anger den fullständigt kvalificerade sökvägen för den aktuella arbetskatalogen. |
| CurrentManagedThreadId |
Hämtar en unik identifierare för den aktuella hanterade tråden. |
| ExitCode |
Hämtar eller anger processens slutkod. |
| HasShutdownStarted |
Hämtar ett värde som anger om den aktuella programdomänen tas bort eller om CLR (Common Language Runtime) stängs av. |
| Is64BitOperatingSystem |
Hämtar ett värde som anger om det aktuella operativsystemet är ett 64-bitars operativsystem. |
| Is64BitProcess |
Hämtar ett värde som anger om den aktuella processen är en 64-bitarsprocess. |
| IsPrivilegedProcess |
Hämtar ett värde som anger om den aktuella processen har behörighet att utföra säkerhetsreleventa funktioner. |
| MachineName |
Hämtar NetBIOS-namnet på den här lokala datorn. |
| NewLine |
Hämtar den nya strängen som definierats för den här miljön. |
| OSVersion |
Hämtar aktuell plattformsidentifierare och versionsnummer. |
| ProcessId |
Hämtar den unika identifieraren för den aktuella processen. |
| ProcessorCount |
Hämtar det antal processorer som är tillgängliga för den aktuella processen. |
| ProcessPath |
Returnerar sökvägen till den körbara fil som startade den pågående processen. Returnerar |
| StackTrace |
Hämtar aktuell stackspårningsinformation. |
| SystemDirectory |
Hämtar den fullständigt kvalificerade sökvägen för systemkatalogen. |
| SystemPageSize |
Hämtar antalet byte på operativsystemets minnessida. |
| TickCount |
Hämtar antalet millisekunder som förflutit sedan systemet startades. |
| TickCount64 |
Hämtar antalet millisekunder som förflutit sedan systemet startades. |
| UserDomainName |
Hämtar nätverksdomännamnet som är associerat med den aktuella användaren. |
| UserInteractive |
Hämtar ett värde som anger om den aktuella processen körs i interaktivt användarläge. |
| UserName |
Hämtar användarnamnet för den person som är associerad med den aktuella tråden. |
| Version |
Hämtar en version som består av huvud-, del-, versions- och revisionsnumren för den vanliga språkkörningen. |
| WorkingSet |
Hämtar mängden fysiskt minne som mappas till processkontexten. |
Metoder
| Name | Description |
|---|---|
| Exit(Int32) |
Avslutar den här processen och returnerar en slutkod till operativsystemet. |
| ExpandEnvironmentVariables(String) |
Ersätter namnet på varje miljövariabel som är inbäddad i den angivna strängen med strängens motsvarighet till variabelns värde och returnerar sedan den resulterande strängen. |
| FailFast(String, Exception) |
Avslutar omedelbart processen innan ett felmeddelande rapporteras. För Windows skrivs felmeddelandet till händelseloggen Windows Program och meddelandet och undantagsinformationen ingår i felrapportering till Microsoft. För Unix-liknande system skrivs meddelandet tillsammans med stackspårningen till standardfelströmmen. |
| FailFast(String) |
Avslutar omedelbart processen innan ett felmeddelande rapporteras. För Windows skrivs felmeddelandet till händelseloggen Windows Program och meddelandet ingår i felrapportering till Microsoft. För Unix-liknande system skrivs meddelandet tillsammans med stackspårningen till standardfelströmmen. |
| GetCommandLineArgs() |
Returnerar en strängmatris som innehåller kommandoradsargumenten för den aktuella processen. |
| GetEnvironmentVariable(String, EnvironmentVariableTarget) |
Hämtar värdet för en miljövariabel från den aktuella processen eller från registernyckeln Windows operativsystem för den aktuella användaren eller den lokala datorn. |
| GetEnvironmentVariable(String) |
Hämtar värdet för en miljövariabel från den aktuella processen. |
| GetEnvironmentVariables() |
Hämtar alla miljövariabelnamn och deras värden från den aktuella processen. |
| GetEnvironmentVariables(EnvironmentVariableTarget) |
Hämtar alla miljövariabelnamn och deras värden från den aktuella processen, eller från registernyckeln Windows operativsystem för den aktuella användaren eller den lokala datorn. |
| GetFolderPath(Environment+SpecialFolder, Environment+SpecialFolderOption) |
Hämtar sökvägen till den angivna systemspecialmappen med ett angivet alternativ för åtkomst till särskilda mappar. |
| GetFolderPath(Environment+SpecialFolder) |
Hämtar sökvägen till den angivna systemspecialmappen. |
| GetLogicalDrives() |
Hämtar namnen på de logiska enheterna på den här datorn. |
| SetEnvironmentVariable(String, String, EnvironmentVariableTarget) |
Skapar, ändrar eller tar bort en miljövariabel som lagras i den aktuella processen eller i Windows registernyckel för operativsystem som är reserverad för den aktuella användaren eller den lokala datorn. |
| SetEnvironmentVariable(String, String) |
Skapar, ändrar eller tar bort en miljövariabel som lagras i den aktuella processen. |