Environment.ExpandEnvironmentVariables(String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Substitui o nome de cada variável de ambiente inserida na cadeia de caracteres especificada com o equivalente de cadeia de caracteres do valor da variável e, em seguida, retorna a cadeia de caracteres resultante.
public:
static System::String ^ ExpandEnvironmentVariables(System::String ^ name);
public static string ExpandEnvironmentVariables (string name);
static member ExpandEnvironmentVariables : string -> string
Public Shared Function ExpandEnvironmentVariables (name As String) As String
Parâmetros
- name
- String
Uma cadeia de caracteres que contém os nomes de zero ou mais variáveis de ambiente. Cada variável de ambiente é delimitado pelo o caractere de sinal de porcentagem (%).
Retornos
Uma cadeia de caracteres com cada variável de ambiente substituída por seu valor.
Exceções
name
é null
.
Exemplos
O exemplo a seguir mostra como obter a unidade do sistema e as variáveis raiz do sistema.
// Sample for the Environment::ExpandEnvironmentVariables method
using namespace System;
int main()
{
String^ str;
String^ nl = Environment::NewLine;
Console::WriteLine();
// <-- 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 );
}
/*
This example produces the following results:
ExpandEnvironmentVariables:
My system drive is C: and my system root is C:\WINNT
*/
// Sample for the Environment.ExpandEnvironmentVariables method
using System;
class Sample
{
public static void Main()
{
// Keep this information secure!
string query = "My system drive is %SystemDrive% and my system root is %SystemRoot%";
string str = Environment.ExpandEnvironmentVariables(query);
Console.WriteLine(str);
}
}
/*
This example prints:
My system drive is C: and my system root is C:\WINDOWS
*/
// Sample for the Environment.ExpandEnvironmentVariables method
open System
let nl = Environment.NewLine
// <-- Keep this information secure! -->
let query = "My system drive is %SystemDrive% and my system root is %SystemRoot%"
let str = Environment.ExpandEnvironmentVariables query
printfn $"\nExpandEnvironmentVariables: {nl} {str}"
// This example produces the following results:
// ExpandEnvironmentVariables:
// My system drive is C: and my system root is C:\WINNT
' Sample for the Environment.ExpandEnvironmentVariables method
Class Sample
Public Shared Sub Main()
Dim str As [String]
Dim nl As [String] = Environment.NewLine
Console.WriteLine()
' <-- 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)
End Sub
End Class
'
'This example produces the following results:
'
'ExpandEnvironmentVariables:
' My system drive is C: and my system root is C:\WINNT
'
Comentários
A interoperabilidade COM é usada para recuperar as variáveis de ambiente do sistema operacional. Se as variáveis de ambiente não puderem ser recuperadas devido a um erro COM, o HRESULT que explica a causa da falha será usado para gerar uma das várias exceções possíveis; ou seja, a exceção depende do HRESULT. Para obter mais informações sobre como o HRESULT é processado, consulte a seção Comentários do Marshal.ThrowExceptionForHR método.
A substituição ocorre apenas para variáveis de ambiente definidas. Por exemplo, suponha que name
seja "MyENV = %MyENV%". Se a variável de ambiente, MyENV, for definida como 42, esse método retornará "MyENV = 42". Se MyENV não estiver definido, nenhuma alteração ocorrerá; este método retorna "MyENV = %MyENV%".
O tamanho do valor retornado é limitado a 32K.