C#

УЧЕБНЫЕ МАТЕРИАЛЫ ПО ПРОГРАММИРОВАНИЮ, КРЕКИНГУ, HTML, CSS, ОФИСНЫМ ПРИЛОЖЕНИЯМ

[Главная страница] [Контакты]

Программирование для Windows


Получение переменных среды

ЗАДАЧА
Получить информацию из переменной среды Windows (например, узнать имя компьютера, имя пользователя, сервер регистрации и т. д.).

РЕШЕНИЕ
Используйте методы GetEnvirormentVariable или GetEnvironmentVariables класса System.Environment.

ОБСУЖДЕНИЕ
ОС Windows хранят некоторую часто используемую информацию в переменных среды. Доступ к этой информации можно получить, вызвав метод Environment.GetEnvironmentVariable и передав в него имя переменной. Например, так можно узнать имя текущего компьютера:

string ComputerName;
ComputerName = Environment.GetEnvironmentVariable("COMPUTERNAME");

Приложения могут определять и задавать собственные переменные среды (обычно это выполняет программа установки). В коде .NET любую переменную среды можно получить по имени, вызвав метод GetEnvlronnentVariable. Однако класс Environment не включает методов, устанавливающих переменные среды, поэтому для решения этой задачи требуется Windows Script Host. Кроме того, вызвав метод GetEnvironmentVariables, можно получить все переменные среды текущего компьютера. Взгляните, как этот способ применяется для заполнения элемента управления ListView:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Collections; // !!!

namespace EnvironmentVar
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            IDictionary Variables = Environment.GetEnvironmentVariables();
            foreach (DictionaryEntry Variable in Variables)
            {
                ListViewItem listItem = new ListViewItem(Variable.Key.ToString());
                listItem.SubItems.Add(Variable.Value.ToString());
                listView1.Items.Add(listItem);
            }
        }
    }
}

w1-2

Используемая литература:

  1. Занимательное программирование на Bisual Basic.NET: Климов А.П.
  2. Программирование для Microsoft Windows на C#: Чарльз Петцольд.
  3. Рецепты программирования на Visual Basic.NET: Мэтью Макдональд.