Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.03.20;
Скачать: CL | DM;

Вниз

Turbo Pascl & реестр   Найти похожие ветки 

 
TP   (2010-12-02 16:35) [0]

Подскажите, пожалуйста, имеется ли возможность в TP работать с реестром?

Спасибо


 
RWolf ©   (2010-12-02 16:55) [1]

TP вроде бы не собирает win32 бинарники?


 
Jeer ©   (2010-12-02 16:55) [2]

Реестр - это просто файл.
TP с файлами работать может.


 
Игорь Шевченко ©   (2010-12-02 17:00) [3]

не имеется


 
RWolf ©   (2010-12-02 17:01) [4]


> Реестр - это просто файл.

только формат у него не самый простой, а ещё под работающей осью он закрыт от чтения/записи.


 
Jeer ©   (2010-12-02 17:07) [5]


> RWolf ©   (02.12.10 17:01) [4]
>
>
> > Реестр - это просто файл.
>
> только формат у него не самый простой, а ещё под работающей
> осью он закрыт от чтения/записи.


Это понятно, но постер не уточнял из под чего он собирается получать доступ к реестру.

Вот ему практический вариант:

1. Загрузиться:
- либо с другого носителя под виндой;
- либо с другого носителя под DOS ( тут придется реализовать возможность доступа, например к NTFS, либо скопировать предварительно на FAT16 нужный файл реестраl
2:
- либо изучить формат файла реестра и реализовать протокол доступа;
- формировать TP-программой reg-файлы нужного содержания и запускать их на исполнение ( обновление реестра). Не все будет доступно.


 
RWolf ©   (2010-12-02 17:20) [6]

под windows можно читать/писать реестр через вызов reg.exe, в принципе.


 
Dennis I. Komarov ©   (2010-12-02 17:22) [7]


> Jeer ©   (02.12.10 17:07) [5]

В таком случае, реестр это не файл, а некий объект ОС, который хранит данные в файле. ;)


 
Jeer ©   (2010-12-02 17:24) [8]


> - формировать TP-программой reg-файлы нужного содержания
> и запускать их на исполнение


Да, + reg.exe.
Все равно полного доступа не получить.


 
Jeer ©   (2010-12-02 17:28) [9]


> Dennis I. Komarov ©   (02.12.10 17:22) [7]
>
>
> > Jeer ©   (02.12.10 17:07) [5]
>
> В таком случае, реестр это не файл, а некий объект ОС, который
> хранит данные в файле. ;)
>


Это если мы запустили Windows, которая как раз и рассматривает реестр, как свой объект.
Из под винды со своим реестром, как уже отмечалось, можно работать только как с объектом. Не забудем еще WSH.

В [2] же я предположил крайний случай получения абсолютного доступа к реестру, именно как к файлу. Трудов больше, да.


 
Anatoly Podgoretsky ©   (2010-12-02 19:26) [10]


> Это понятно, но постер не уточнял из под чего он собирается
> получать доступ к реестру.

Ну не понятно же, естественно из ДОСа


 
Inovet ©   (2010-12-02 21:41) [11]

> [10] Anatoly Podgoretsky ©   (02.12.10 19:26)
> Ну не понятно же, естественно из ДОСа

Я думаю, ДОС у автора - это такое чёрное окошечко на рабочем столе Вин.


 
TP   (2010-12-02 22:05) [12]

Автор с рабочим столом не работает (почти забыл как он выглядит)
:)
Мой рабочий стол - Total Commander :)

здесь
> Игорь Шевченко ©   (02.12.10 17:00) [3]


исчерпывающий ответ


 
Inovet ©   (2010-12-02 23:21) [13]

> [12] TP   (02.12.10 22:05)
> Total Commander :)

Вот и я о том же.


 
Inovet ©   (2010-12-02 23:32) [14]

> [5] Jeer ©   (02.12.10 17:07)
> формировать TP-программой reg-файлы нужного содержания и
> запускать их на исполнение ( обновление реестра). Не все
> будет доступно.

Ещё один способ.

Намисать обёртку Win32 над функциями работы с реестром и обменом через файл своего формата.
Например в текстовом виде ТП формирует что-то навроде

Подключиться HKCU
Читать имя_ветки1 как целое
создать имя_ветки2 как строка
писать имя_вети2 как строка "моя стрка"

в ответ читает:

Ок
123
Ок
Ок


 
Dimka Maslov ©   (2010-12-03 00:21) [15]

Помнится мне (может я ошибаюсь) что для DOS приложений в венде имеется некое прерыввание, позволяющее использовать WinAPI.


 
Германн ©   (2010-12-03 02:47) [16]


> Dimka Maslov ©   (03.12.10 00:21) [15]
>
> Помнится мне (может я ошибаюсь) что для DOS приложений в
> венде имеется некое прерыввание, позволяющее использовать
> WinAPI.

А как это может быть реализовано?


 
Anatoly Podgoretsky ©   (2010-12-03 10:01) [17]

> Inovet  (02.12.2010 21:41:11)  [11]

Турбо Паскаль - это не черное окошко, а именно ДОС программа и из под
Виндоус она запускается в эмуляторе ДОС


 
Dimka Maslov ©   (2010-12-03 10:05) [18]


> А как это может быть реализовано?


Через обращение к прерываниям. В досе весь апи через них работал. При работе программы в эмуляторе это реализовать не так уж сложно, но встаёт вопрос на кой?


 
alexdn_   (2010-12-03 11:04) [19]

> Dimka Maslov ©   (03.12.10 10:05) [18]
> но встаёт вопрос на кой?
вот вот


 
Palladin ©   (2010-12-03 11:48) [20]

не... что значит на кой... ставят же люди на "батоны" спойлеры... значит нада


 
Inovet ©   (2010-12-03 11:51) [21]

> [17] Anatoly Podgoretsky ©   (03.12.10 10:01)
> эмуляторе ДОС

Так эмулятор а не голый ДОС, и какой из него доступ к файлу реестра будет из-под Виндоус. Как всегда в
> [0] TP   (02.12.10 16:35)

это не уточняется.


 
DiamondShark ©   (2010-12-03 11:51) [22]


> что для DOS приложений в венде имеется некое прерыввание,
>  позволяющее использовать WinAPI.

21h же.
Но. Не весь WinAPI, а только файловые операции с длинными именами. И не во всех виндах, а только 9х.

Так что можно смело считать, что ничего такого нету.


 
Ega23 ©   (2010-12-03 11:53) [23]


> Мой рабочий стол - Total Commander :)


Нашёл чем гордиться.


 
Anatoly Podgoretsky ©   (2010-12-03 11:53) [24]

> Inovet  (03.12.2010 11:51:21)  [21]

Это я назвал его эмулятором, на сам деле виртуральная машина


 
Inovet ©   (2010-12-03 12:20) [25]

> [24] Anatoly Podgoretsky ©   (03.12.10 11:53)
> Это я назвал его эмулятором, на сам деле виртуральная машина

доступа один фиг не будет.

Автору. А для чего из ДОС прораммы может понадобиться доступ к реестру Виндоус? Как и сама программа в эмуляторе, пардон в NTVDM.


 
Dimka Maslov ©   (2010-12-03 19:24) [26]


> DiamondShark ©   (03.12.10 11:51) [22]


Скорее всего именно так. Давно это было и не надо.



Страницы: 1 вся ветка

Текущий архив: 2011.03.20;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.019 c
2-1293354256
nza
2010-12-26 12:04
2011.03.20
Массив свовойств


15-1290230521
RGV
2010-11-20 08:22
2011.03.20
Всем! Кто не равнодушен к сокращению часовых поясов


1-1248841258
atruhin
2009-07-29 08:20
2011.03.20
Как узнать имя класса зная его ...


15-1291152578
Юрий
2010-12-01 00:29
2011.03.20
С днем рождения ! 1 декабря 2010 среда


2-1293407915
Тимоха111
2010-12-27 02:58
2011.03.20
динамический pagecontol и событие к нему