Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Помощь по CheckBox


Автор: Виктор21 11.5.2012, 15:53
Народ, помогите сделать рабочий 'CheckBox' запомнить имя и пароль. Чтобы во второй раз когда зайдут в программу не надо было ввести заново данные.

Автор: XperT 11.5.2012, 16:51
А в чем конкретно проблема? Чекбоксы на форму бросать не умеем? Считывать состояние чекбокса? Или записывать его в файл/реестр?

Автор: Данкинг 11.5.2012, 16:56
Цитата(Виктор21 @  11.5.2012,  16:53 Найти цитируемый пост)
Чтобы во второй раз когда зайдут в программу не надо было ввести заново данные. 

Сохраняй инфу в реестре.

Автор: Виктор21 11.5.2012, 17:37
Цитата(Данкинг @ 11.5.2012,  16:56)
Цитата(Виктор21 @  11.5.2012,  16:53 Найти цитируемый пост)
Чтобы во второй раз когда зайдут в программу не надо было ввести заново данные. 

Сохраняй инфу в реестре.

если можно напиши код

Добавлено через 36 секунд
Цитата(XperT @ 11.5.2012,  16:51)
А в чем конкретно проблема? Чекбоксы на форму бросать не умеем? Считывать состояние чекбокса? Или записывать его в файл/реестр?

проблема в том что несохраняет нифига

Автор: Данкинг 11.5.2012, 17:40
Цитата(Виктор21 @  11.5.2012,  18:37 Найти цитируемый пост)
если можно напиши код

Ищи по форуму процедуру RegWriteStr.
Цитата(Виктор21 @  11.5.2012,  18:37 Найти цитируемый пост)
проблема в том что несохраняет нифига 

Совсем нифига несохраняет?

Автор: Виктор21 11.5.2012, 17:53
Данкинг совсем нефига

Автор: northener 11.5.2012, 17:56
Цитата(Виктор21 @  11.5.2012,  17:37 Найти цитируемый пост)
проблема в том что несохраняет нифига 

А пробовал?

Автор: Виктор21 11.5.2012, 17:58
Цитата(northener @ 11.5.2012,  17:56)
Цитата(Виктор21 @  11.5.2012,  17:37 Найти цитируемый пост)
проблема в том что несохраняет нифига 

А пробовал?

конечно

Автор: Данкинг 11.5.2012, 18:15
Цитата(Виктор21 @  11.5.2012,  18:58 Найти цитируемый пост)
конечно

Пробуй сохранить в HKCU для данного юзера. Может, прав на запись в реестр нет.

Автор: Виктор21 11.5.2012, 18:18
Цитата(Данкинг @ 11.5.2012,  18:15)
Цитата(Виктор21 @  11.5.2012,  18:58 Найти цитируемый пост)
конечно

Пробуй сохранить в HKCU для данного юзера. Может, прав на запись в реестр нет.

напиши исходник ато невыходит

Автор: Данкинг 11.5.2012, 18:31
Цитата(Виктор21 @  11.5.2012,  19:18 Найти цитируемый пост)
напиши исходник ато невыходит 

Если ато невыходит - это не есть хорошо, но покажи сначала свой код, где ты пробовал.

Автор: Виктор21 11.5.2012, 18:38
Код

function RegWriteStr(RootKey: HKEY; Key, Name, Value: string): Boolean;
var
  Handle: HKEY;
  Res: LongInt;
begin
  Result := False;
  Res := RegCreateKeyEx(RootKey, PChar(Key), 0, nil, REG_OPTION_NON_VOLATILE,
    KEY_ALL_ACCESS, nil, Handle, nil);
  if Res <> ERROR_SUCCESS then
    Exit;
  Res := RegSetValueEx(Handle, PChar(Name), 0, REG_SZ, PChar(Value),
    Length(Value) + 1);
  Result := Res = ERROR_SUCCESS;
  RegCloseKey(Handle);
end;


Добавлено через 1 минуту и 54 секунды
не знаю правильно или нет...

Автор: Виктор21 11.5.2012, 19:56
:( чу ни кто не поможет? 

Автор: northener 11.5.2012, 20:13
Цитата(Виктор21 @  11.5.2012,  19:56 Найти цитируемый пост)
чу ни кто не поможет?

Так где кодБ которым ты пробовал записать в реестр? Не чужая готовая функция (которая кстати в данном случае не пригодна), а твой код.

Добавлено через 14 минут и 34 секунды
http://helpstudio.h1.ru/books/d4/d4_14/_tregis0.htm

Автор: Данкинг 11.5.2012, 21:32
Цитата(Виктор21 @  11.5.2012,  19:38 Найти цитируемый пост)
не знаю правильно или нет... 

Да, функция правильная, я про неё и говорил.

Добавлено через 43 секунды
Цитата(northener @  11.5.2012,  21:13 Найти цитируемый пост)
которая кстати в данном случае не пригодна)

Почему? Строковое значение же нужно записать в реестр.

Автор: northener 11.5.2012, 21:41
Цитата(Данкинг @  11.5.2012,  21:32 Найти цитируемый пост)
 Строковое значение же нужно записать в реестр. 

Тьфу ты. Я уж и забыл о чем речь шла. Подумал надо состояние CheckBox'а сохранять smile

Автор: Виктор21 11.5.2012, 23:14
Цитата(northener @ 11.5.2012,  20:13)
Цитата(Виктор21 @  11.5.2012,  19:56 Найти цитируемый пост)
чу ни кто не поможет?

Так где кодБ которым ты пробовал записать в реестр? Не чужая готовая функция (которая кстати в данном случае не пригодна), а твой код.

Добавлено @ 20:27
http://helpstudio.h1.ru/books/d4/d4_14/_tregis0.htm

я это код и пытался писать) ну тот что выше я написал...
если не трудно помоги разобраться 
что бы при галочки сохранял логин и пароль
я новичок (( долго искал как все же это сделать но так и не нашел (

Автор: Данкинг 11.5.2012, 23:35
Цитата(Виктор21 @  12.5.2012,  00:14 Найти цитируемый пост)
я это код и пытался писать) ну тот что выше я написал...

Покажи пример своего кода, в котором ты использовал вышеуказанную функцию.

Автор: northener 12.5.2012, 00:21
Цитата(Виктор21 @  11.5.2012,  23:14 Найти цитируемый пост)
я это код и пытался писать) ну тот что выше я написал...
если не трудно помоги разобраться 

Ну мы вроде как и пытаемся помочь "разобраться". Но в чём нужно разобраться - вот вопрос!

Автор: Виктор21 15.5.2012, 11:05
надо при нажатии на CheakBox чтобы сохранял логин и пароль ,
тоесть при втором входе в программу она непросила логин и пароль - вот это мне и нужно

Автор: Данкинг 15.5.2012, 12:34
Цитата(Виктор21 @  15.5.2012,  12:05 Найти цитируемый пост)
вот это мне и нужно 

Нужно - пиши. Что мешает?

Автор: Виктор21 15.5.2012, 13:06
яж обьяснил что неполучается

Автор: Данкинг 15.5.2012, 13:39
У тебя "неполучается" записать в реестр строковое выражение. Но ты говоришь, что пробовал. Тебя просили показать код, в котором ты пробовал. Где этот код?

Автор: Виктор21 15.5.2012, 14:03
я тебе писал его вот тебе ещё раз 
Код

function RegWriteStr(RootKey: HKEY; Key, Name, Value: string): Boolean;
var
  Handle: HKEY;
  Res: LongInt;
begin
  Result := False;
  Res := RegCreateKeyEx(RootKey, PChar(Key), 0, nil, REG_OPTION_NON_VOLATILE,
    KEY_ALL_ACCESS, nil, Handle, nil);
  if Res <> ERROR_SUCCESS then
    Exit;
  Res := RegSetValueEx(Handle, PChar(Name), 0, REG_SZ, PChar(Value),
    Length(Value) + 1);
  Result := Res = ERROR_SUCCESS;
  RegCloseKey(Handle);
end;

Автор: Данкинг 15.5.2012, 14:27
Цитата(Виктор21 @  15.5.2012,  15:03 Найти цитируемый пост)
я тебе писал его вот тебе ещё раз 

 smile 
И что именно не работает у тебя в этом коде?

Добавлено через 39 секунд
К тому же это не твой код. smile 

Автор: Виктор21 15.5.2012, 14:34
это мой код 
из-за него прога незапоминает лог и пароль

Автор: XperT 15.5.2012, 14:57
 smile 
А ты считываешь во время загрузки программы те данные, что записал в реестр?

Автор: Виктор21 15.5.2012, 15:01
да

Автор: XperT 15.5.2012, 15:47
Цитата(Виктор21 @ 15.5.2012,  15:01)
да

Как? Код?

P.S. Такое чувство, как-будто это нам нужно.

Автор: Данкинг 15.5.2012, 16:17
Цитата(Виктор21 @  15.5.2012,  15:34 Найти цитируемый пост)
это мой код 

Да? Странно: я этот код уже лет 5 назад использовал. smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)