Re: [DELPHI,XP] Запись в реестр integer-а

kokon77

делаю следующее
...
var
RegIni:TRegIniFile;
Value:integer;
...
Regini.WriteInteger('Section1', 'ID1', Value1)
...
смотрю после в реестре ...
ID1 REG_SZ 3
т.е. ID1 почему то строка...., а нужно записать DWORD...
кто может подсказать что нужно исправить?

maggi14

у меня то же самое.
Может быть, это потому, что TRegIniFile предназначен, на самом деле, для работы с текстовыми файлами, а вовсе не с реестром.
Попробуй использовать TRegistry.WriteInteger. У меня все получилось.

kokon77

спасибо помогло

evgen5555



Value:integer;
...
Regini.WriteInteger('Section1', 'ID1', Value1)

maggi14

маза опечатка. У меня в обоих случаях i, и все равно TRegIniFile.WriteInteger создает строковую переменную. Особенность работы с профилями в ini-файлах, полагаю.

vijrel7878


function WriteReg(RootKey: HKEY; const SubKeyName, ValueName: string; Value: DWORD): Boolean;
var
SubKey: HKEY;
begin
SubKey := RootKey;
if (SubKeyName = '') or
CreateRegKey(RootKey, PChar(SubKeyName SubKey) then
begin
Result := RegSetValueEx(SubKey, PChar(ValueName 0, REG_DWORD_LITTLE_ENDIAN, @Value, sizeof(Value = ERROR_SUCCESS;
if SubKey <> RootKey then
RegCloseKey(SubKey);
end
else
Result := False;
end;

gopnik1994

а нахуа?
VCL vs WinAPI что ли?

vijrel7878

рабочий код для этой задачи
vcl-ем не заморачиваюсь

Andbar

только это еще не vcl, а просто один из стандартных классов. Для маленьких программ предпочтительнее использовать именно WinAPI дабы избавиться от SysUtils.

yolki

а что такого плохого в SysUtils?

Andbar

добавляет несколько десятков Кб, в зависимости от того, что использовать.
простейшая прога занимает 13824 байт (между begin и end ничего нет, без подключения каких-либо модулей)
Если подключить SysUtils, получим 39424 байта. Однако если еще использовать какие-то процедуры из SysUtils, прирост получается еще больше.
Правда, если использовать пакеты стандартные, то получим 3584 и 4096 байт, но использовать пакеты в проектах, не включающих кучу модулей, не правильно.

Slavaga

добавляет несколько десятков Кб, в зависимости от того, что использовать.
Ну давайте все на асме тогда прогать

evgen5555

А что, это не так уж и сложно
Оставить комментарий
Имя или ник:
Комментарий: