Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2011.03.20;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.005 c
15-1291724614
Омлет
2010-12-07 15:23
2011.03.20
Что будет, когда закончатся IPv4-адреса?


3-1255340705
Yurikon
2009-10-12 13:45
2011.03.20
Ошибка с драйвером Access


15-1291238977
Юрий
2010-12-02 00:29
2011.03.20
С днем рождения ! 2 декабря 2010 четверг


2-1293354617
radiokarazinec
2010-12-26 12:10
2011.03.20
поиск максимальных элементов в массиве


2-1293376363
Godod
2010-12-26 18:12
2011.03.20
Чертеж графика по точке на видео





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский