Аватар для Steroid
296 / 217 / 86
Регистрация: 17.02.2016
Сообщений: 1,276
Записей в блоге: 1

Запуск определенной формы с помощью if/else, по состоянию значения ключа EnableLUA

17.02.2016, 04:06. Показов 1932. Ответов 22

Студворк — интернет-сервис помощи студентам
Всем привет
я только начал учится и пытаюсь написать прогу которая устанавливает нужный мне софт без участия юзера (запустил и пошел кофе пить)
проблема в том что некоторый софт при запуске запрашивает UAC и нужно нажимать кнопку "да" чтобы чтото установитьб ну и так далее...
Задумка вот какая:
Запуск проги она проверяет значение ключа "EnableLUA" в регистре и открывает форму в зависимости от того какое значение имеет ключ "0" или "1"
Перелапатил уже все что мог но почемуто не получается запустить нужную мне форму
Очень прошу помосчи
мой код:

C#
1
2
3
4
5
6
7
8
9
10
11
RegistryKey readKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System", true);
 
if (readKey.GetValue == "0")
            {
                Application.Run(new CheckBox());
                
            }
            else
            {
                Application.Run(new UACoff());
            }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.02.2016, 04:06
Ответы с готовыми решениями:

Присвоение значения ключа при заполнении формы
У меня в одной форме параллельно заполняются 2 таблицы Klient и Connect, В Клиенте первичный ключ, генерирующийся через auto_increment, в...

Изменение значения элементов формы после нажатия определенной клавиши
Нужно сотворить следующее. Есть форма с кнопкой "Привет", после нажатия на которую появляется сообщение "Привет". Необходимо,...

Нажатие определенной клавиши на клавиатуре = Запуск определенной функции
Здравствуйте. У меня такой вопрос: как при нажатии, к примеру, клавиши "1" на клавиатуре запустить нужную мне функцию (Окно с меню...

22
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18365 / 14296 / 5370
Регистрация: 17.03.2014
Сообщений: 28,979
Записей в блоге: 1
25.04.2016, 23:05
Студворк — интернет-сервис помощи студентам
Steroid, не понял вопроса. При чем здесь cmd? Мы запускаем процесс напрямую.
0
 Аватар для Steroid
296 / 217 / 86
Регистрация: 17.02.2016
Сообщений: 1,276
Записей в блоге: 1
25.04.2016, 23:19  [ТС]
OwenGlendower,
я наверное просто туплю.
но так понял что "Environment.Is64BitProcess" появилась с дотНет 4.0+
если устанавливать чистую Windows 7 SP1 то там по у молчанию установлена дотНет 3.5
столкнулся с этим только при тестировании скрипта, решил переделать в свойствах проэкта нужную дотНет версию с 4.5 на 3.5 и столкнулся с ошибкой в этом месте.
Могу конечно вызвать slui.exe через cmd, но хочется узнать как это по другому сделать

ПыСы: можешь посоветовать книгу по C# ну прям для совсем чайников как я, мой опыт програмирования сводится к небольшим *.bat файлам ну и HTML лет 10 назад писал в блокноте а так дуб дубом

Добавлено через 2 минуты
я еще в "Microsoft Virtual Academy" учу C#, но там бывает всё так замудренно както
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18365 / 14296 / 5370
Регистрация: 17.03.2014
Сообщений: 28,979
Записей в блоге: 1
29.04.2016, 01:06
Цитата Сообщение от Steroid Посмотреть сообщение
я наверное просто туплю.
но так понял что "Environment.Is64BitProcess" появилась с дотНет 4.0+
Ты все правильно понял. Просто вопрос неудачно сформулировал.

Цитата Сообщение от Steroid Посмотреть сообщение
это под дотНэт 3,5 реализовывается только через cmd или тоже както можно через "Environment"? (гуглил но толком ничего не нашел, либо код на "40сторок" либо через cmd)
Здесь можно не мудрить сильно и просто проверять существование одного из файлов. Примерно так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void StartOneProcessAndWait(string path1, string path2)
{
    string path = Environment.ExpandEnvironmentVariables(path1);
    if (!File.Exists(path))
    {
        path = Environment.ExpandEnvironmentVariables(path2);
        if (!File.Exists(path))
        {
            throw new FileNotFoundException();
        }
    }
    
    Process.Start(path).WaitForExit();
}
Использование
C#
1
StartOneProcessAndWait(@"%windir%\sysnative\slui.exe", @"%windir%\system32\slui.exe");
Добавлено через 3 минуты
Цитата Сообщение от Steroid Посмотреть сообщение
можешь посоветовать книгу по C# ну прям для совсем чайников
Я не читал книги по C# для начинающих, но вроде книги Шилдта неплохие.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.04.2016, 01:06

Нужно с помощью функции проверить значения в полях формы.
Помогите новичку. Нужно с помощью функции проверить значения в полях формы. в одной форме нужно ввести имя и фамилию, при этом нельзя...

Защита приложения с помощью ключа
В общем мне нужна помошь. При первом запуске программа должна запрашивать ключ-запрос.Затем мой клиент отправляет мне этот ключ.Генератор...

В зависимости от значения некоторого выражения вычислить значения функции y(x), определенной на отрезке [a;b],
Добрый вечер, помогите пожалуйста решить задачку С++ на тему"Сочетания циклов и разветвлений" В зависимости от значения некоторого...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

Новые блоги и статьи
Жара жесть.
kumehtar 18.08.2026
Пролетают летом дни Тридцать пять жары в тени. Каждый август год от года Дарит жаркую погоду.
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru