Цитата Karbid87:
Теперь при компиляции стал ругаться: »
|
Переменные среды проекта (проверьте соответствие путей к папкам) смотрите в ->Tools->Options->Environmental Variables!
Цитата Karbid87:
Прошу вас напишите мне листинг программы с помощью JclRegistry »
|
Сделаю, но может вечером - я, с планшета.
Вариаций много, для общего понимания достаточно. Код с "коленки", так что, проверяйте.
uses JclRegistry, JclSysInfo, JclStrings;
....
procedure TForm1.FormCreate(Sender: TObject);
begin
if IsWin7 then
...;
if IsWindows64 then
...;
end;
......
var
RootKey: HKEY;
PathKEY:String;
begin
RootKey := HKEY_LOCAL_MACHINE;
SubKey := 'SOFTWARE\Programma\Razdel';
if not RegKeyExists(RootKey, PathKEY) then
ShowMessage('.....! ')
else
begin
if RegValueExists(RootKey, SubKey, 'DataFolder') then // если хотите проверять наличие параметра
RegWriteString(RootKey, SubKey, 'DataFolder', 'C:\\ProgramData\\Programma\\Razdel'); // обычная строка с завершающим нулем.
if RegValueExists(RootKey, SubKey, 'SetupVersion') then
RegWriteDWORD(RootKey, SubKey, 'SetupVersion', 123); // 32-разрядное число (смотрите как записать, то-ли десятичное, то-ли как шестнадцатиричное. Есть перегруженная версия с доп. параметрами)
if RegValueExists(RootKey, SubKey, '.....') then
RegWriteInteger(RootKey, SubKey, '.....', 1); // целое
if RegValueExists(RootKey, SubKey, '.....') then
RegWriteString(RootKey, SubKey, '.....', REG_EXPAND_SZ, '%SystemRoot%\System32\shell32.dll,50'); // ссылки на переменные среды
// ?* смотрите функцию StringsToMultiSz в Help!
if RegValueExists(RootKey, SubKey, '.....') then
RegWriteString(RootKey, SubKey, '.....', REG_MULTI_SZ, (?*)); // Последовательность строки с нулевым символом, завершающийся пустой строкой
end;
end;