Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.07.2009, 19:29   #11
Altera
Старожил
 
Аватар для Altera
 
Регистрация: 29.01.2008
Сообщений: 2,406
По умолчанию

Цитата:
Сообщение от __@cmd@__ Посмотреть сообщение
вот так работает
Код:
Writeinteger('DefaultColor',(byte(RadioGroup1.ItemIndex) shl 8) + byte(RadioGroup2.ItemIndex) );
только между двумя числами 0 лишний=(( как убрать подскажите?
Ну и что, что он там лишний. если работает, значит все правильно сделанно

Вот код, который работает на 100%

Код:
var
  
  i: integer;

implementation

procedure Tmain_form.Button3Click(Sender: TObject);
var
i1, i2: integer;
begin
   i1 := 45634;
   i2 := 65343;
   //В данном примере i1 и i2 не должны превышать значение в 65535 !
   i := (i1 shl 16) + i2;
end;

procedure Tmain_form.Button4Click(Sender: TObject);
var
i1, i2: integer;
begin
   i1 := i shr 16;
   i2 := word(i);
   showMessage('i1: '+intToStr(i1)+' i2: '+intToStr(i2));
end;

Последний раз редактировалось Altera; 10.07.2009 в 19:43.
Altera вне форума Ответить с цитированием
Старый 10.07.2009, 20:48   #12
__@cmd@__
Пользователь
 
Регистрация: 01.02.2009
Сообщений: 24
По умолчанию

Код:
Writeinteger('DefaultColor',(byte(RadioGroup1.ItemIndex) shl 8) + byte(RadioGroup2.ItemIndex) );
в этом варианте в значение параметра ресстра пишеться так
705 или 304 в результате значение параметра задаеться некорректно и получаеться не то что надо и я вот ща думаю как это 0 по середине убрать


Получаеться в моем случае сдвиг влево а нельзя ли как нибудь как раз к этому нулю приплючовать то что надо допустим к 0 прибавить радиобуттонргуп2.itemindex

я уж подумываю сделать какоенибудь действие чтобы убирала 0 по середине ну ченить типо 403 = (403-3)/10+3=43

Последний раз редактировалось Stilet; 13.07.2009 в 11:22.
__@cmd@__ вне форума Ответить с цитированием
Старый 11.07.2009, 04:33   #13
Altera
Старожил
 
Аватар для Altera
 
Регистрация: 29.01.2008
Сообщений: 2,406
По умолчанию

Что ты глупости пишешь, ты как объект используешь? tRegIniFile?

Вот здесь я для tRegistry навоял.
Для tRegIniFile-а та же ситуация

Код:
procedure Tmain_form.Button3Click(Sender: TObject);
var
il, ih, i: integer;
reg: tRegistry;
begin
   ih := 65343; //Первое число. Устанавливает любое от 0..65535
   il := 45634; //Второе число. Устанавливает любое от 0..65535

   i := (ih shl 16) + il; // Операция объединения 2-х 16-битных чисел в одно 32-х битное! 

   reg := tRegistry.Create; // Выделаем память под указатель reg
   reg.RootKey := HKEY_CURRENT_USER; // Устанавливаем нужный ключ
   reg.OpenKey('software\0000000 temp', true); // переходим в нужный раздел
   reg.WriteInteger('NUMBER', i); // записываем это несчастное число
   reg.Free; // освобождаем память
end;

procedure Tmain_form.Button4Click(Sender: TObject);
var
ih, il, i: integer;
reg: tRegistry;
begin
   reg := tRegistry.Create; // Выделаем память под указатель reg
   reg.RootKey := HKEY_CURRENT_USER; // Устанавливаем нужный ключ
   reg.OpenKey('software\0000000 temp', true); // переходим в нужный раздел
   i := reg.ReadInteger('NUMBER'); // считываем число в переменную i
   reg.Free; // освобождаем память

   ih := i shr 16; // получаем первое число 
   il := word(i); // получаем второе число
   showMessage('ih: '+intToStr(ih)+' il: '+intToStr(il)); // показываем __@cmd@__ эти 2 числа.
end;
Вот тебе скрин реестр, если не веришь
Altera вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с реестром Sharp_eye Помощь студентам 8 21.06.2009 00:05
Работа с реестром Ky3Heu, Общие вопросы Delphi 1 04.05.2009 10:37
работа с реестром zetrix Безопасность, Шифрование 2 31.10.2007 12:20
работа с реестром. kozei Win Api 6 17.07.2007 13:31
Работа с реестром. eL1tE Общие вопросы Delphi 5 16.04.2007 15:48