Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.77/22: Рейтинг темы: голосов - 22, средняя оценка - 4.77
 Аватар для Roctik
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76

Изменить параметр ветки реестра

19.07.2014, 12:24. Показов 4810. Ответов 43
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
вот ветка
HKEY_LOCAL_MACHINE\SOFTWARE\Microso ft\Windows NT\CurrentVersion\Winlogon
параметр SHELL его значение равно Explorer.exe
так вот как мне дописать до него что-то ?
например: Explorer.exe, c:\1.exe
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.07.2014, 12:24
Ответы с готовыми решениями:

Вытащить параметры ветки реестра
Как из ветки реестра вытащить все доступные параметры? желательно в массив загнать, чтобы потом использовать любой из параметров

Отображение ветки реестра в memo
Доброго времени суток уважаемые форумчане, помогите чайнику разобраться как в мемо1 вывести все когда-либо подключенные флешки к компьютеру...

Не считывает параметр с реестра
Добрый день. Есть код: //--------------------------------------------------------------------------- #include <vcl.h> ...

43
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
19.07.2014, 12:34
C++
1
2
3
4
5
6
7
8
9
10
#include <Registry.hpp>
//---------------------------------------------------------
TRegistry *Reg = new TRegistry;
Reg->RootKey = HKEY_LOCAL_MACHINE;
if (Reg->OpenKey(L"\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon", true))
{
 Reg->WriteString(L"Shell",L"пиши что хочешь");
 Reg->CloseKey();
}
delete Reg;
0
 Аватар для Roctik
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
19.07.2014, 13:03  [ТС]
ничего не изменилось(
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
19.07.2014, 13:08
Цитата Сообщение от Roctik Посмотреть сообщение
ничего не изменилось(
1) Для записи в HKLM нужны права администратора.

2) Если программа 32-битная, а система 64-битная, запись пойдет в ветку
HKLM\Software\Wow6432Node\Microsoft\...
2
 Аватар для Roctik
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
19.07.2014, 13:10  [ТС]
можно прогу сделать 64 битную?
0
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
19.07.2014, 13:13
у меня на winXP и win7 32 этот код работает
0
 Аватар для Roctik
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
19.07.2014, 13:16  [ТС]
Цитата Сообщение от Убежденный Посмотреть сообщение
Если программа 32-битная, а система 64-битная, запись пойдет в ветку
HKLM\Software\Wow6432Node\Microsoft\...
да у меня сюда записалось, а не туда куда нужно

Добавлено через 38 секунд
у меня win 7 64-бит

Добавлено через 57 секунд
повторюсь )))
можно прогу сделать 64 битную? и как это сделать?
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
19.07.2014, 13:20
Это необязательно.
Просто добавьте флаг KEY_WOW64_64KEY при открытии ключа реестра.
1
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
19.07.2014, 13:31
в Project Manager (дерево проекта справа) Target Platform (пкм) Add Platform

Добавлено через 2 минуты
Цитата Сообщение от Убежденный Посмотреть сообщение
Просто добавьте флаг KEY_WOW64_64KEY при открытии ключа реестра.
C++
1
TRegistry *Reg = new TRegistry(KEY_WOW64_64KEY);
Так или нет?

Добавлено через 8 минут
методом тыка проверить не могу, винда 32 битная
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
19.07.2014, 13:33
Цитата Сообщение от _Dimon_ Посмотреть сообщение
методом тыка проверить не могу, винда 32 битная
А у меня Builder-а нету
0
 Аватар для Roctik
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
19.07.2014, 13:39  [ТС]
Цитата Сообщение от _Dimon_ Посмотреть сообщение
Так или нет?
у меня ничего не изменилось
0
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
19.07.2014, 13:45
Лучший ответ Сообщение было отмечено Roctik как решение

Решение

Roctik, попробуй так
C++
1
TRegistry *Reg = new TRegistry(KEY_WRITE | KEY_WOW64_64KEY);
а для 32-битной винды флаг KEY_WOW64_64KEY будет игнорироватся (имхо)

Добавлено через 2 минуты
или
C++
1
2
TRegistry *Reg = new TRegistry();
Reg->Access = KEY_WRITE | KEY_WOW64_64KEY;
как больше нравится
2
 Аватар для Roctik
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
19.07.2014, 13:47  [ТС]
спасибо огромное ))))
записало))))
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
19.07.2014, 19:42
Цитата Сообщение от _Dimon_ Посмотреть сообщение
а для 32-битной винды флаг KEY_WOW64_64KEY будет игнорироватся (имхо)
Будет.

Registry Key Security and Access Rights
http://msdn.microsoft.com/en-u... 85%29.aspx
KEY_WOW64_64KEY (0x0100)

Indicates that an application on 64-bit Windows should operate on the 64-bit registry view.
This flag is ignored by 32-bit Windows.
0
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
20.07.2014, 00:49
Убежденный, в ms-хелпе есть такая информация, а в хелпе XE3 я такого не нашел. Нашел на стековерфлове почти похожий пример и то на делфи. но суть одна
0
20.07.2014, 16:54

Не по теме:

Ох уж мне эти нелепые подмены проводника в реестре.:ireful: Надоело уже чистить компы друзей-товарищей...

0
20.07.2014, 17:03

Не по теме:

BRcr, я использовал подмену explorer-a на свою программу на работе.
в цеху стояли машины с виндой и тетки все время то кнопку "виндовс" нажмут, то еще чего, а так чистое поле, ни одна программа не мешает, alt-tab никуда не переключает, панели задач нет только ctrl-alt-del работает, но они такой комбинации не знали да и случайно не нажмешь

0
20.07.2014, 17:12

Не по теме:

Да понятно это, оболочек много есть. Просто бесит такой архитупой эксплойт в винде...

0
20.07.2014, 18:14

Не по теме:


BRcr, ну почему же тупой ?
Для записи в HKLM нужны права администратора.
Если юзер отключил UAC, сидит под админской учеткой и запускает
все подряд - он сам себе злобный буратино и никакая защита его не спасет.

0
20.07.2014, 18:39

Не по теме:

Да это понятно все. И буратины эти создают себе головняк чаще всего сами, причем при включенном UAC.:)
Я больше о защите от дурака, когда на такие простые вещи, как автозапуск или оболочка следует выдавать дополнительное шибко грозное уведомление, чтобы отпугнуть неосведомленных.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.07.2014, 18:39
Помогаю со студенческими работами здесь

Права на ветки реестра
В моей программе вывода дерева для ветки реестра HKLM\\SYSTEM\\CurrentControlSet\\Enum\\USB при попытке получить подключи веток Properties...

Чтение ветки с реестра
мне нужно чтобы программа читала ветку с реестра т.е. с файлов все данные и т.д делаю так var Reg: TRegistry; begin Reg:=...

Мониторинг ветки реестра
Есть ветка HKEY_LOCAL_MACHINE\SOFTWARE\Task_Queue\Parameters\Task_Execution_Duration Что нужно написать, чтоб програма после запуска и до...

Получение имени ветки реестра
подскажите как получить имя вложенной ветки реестра например есть есть ветка реестра HKEY_CURRENT_USER\\SOFTWARE\\Yandex\\{name} - тут...

VBS. Удаление ветки реестра
Доброго времени суток. Вопрос по VBScript. Подскажите как удалить раздел реестра если он содержит ключи или подразделы имена которых...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru