Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Как создать пароль? |
Автор: Klin 29.10.2002, 08:45 |
Как создать пароль, чтобы он воспринемал чилсла я знаю, а буквы нет. Может, кто подскажет? P.S. Если я не ясно написал скажите мне, я уточню. |
Автор: Baa 29.10.2002, 11:10 |
Че-то ты хитрое задумал... Пароль воспринимал числа... звучит, как будто ты переборщик паролей пишешь... хотя скорее всего это просто генератор случайных паролей... но так или иначе, я не телепат... если хочешь получить ответ, то тебе следует уточнить свой вопрос... |
Автор: Klin 30.10.2002, 01:27 |
Ха-ха! Нет, я делаю демо-версию проги. А насчёт уточнить, пожалуйста: у меня есть поле Memo и кнопка Button и Timer. Button1->Enabled=false; false меняется true, если в мемо написать "Код". Ну, а код кнопки не нужен...мне нужно, чтобы можно было ввести пароль. P.S. Ещё точнее? |
Автор: Baa 30.10.2002, 05:32 |
Угу.... еще больше запутал... |
Автор: HexoGenus 13.11.2002, 21:21 | ||
Мне вроде понятно что ты хочешь .... Например в программе Nero набираешь свой пароль и пока не наберешь правильный (к примеру hjg6765hhjjkgf56) не загорается кнопка ОК в результате если пользователь допустил опечатку он не сможет продолжить... Одного не пойму!!!! Почему Memo а не Edit !!!! у тебя пароль что многострочный ![]() Если да то тебе мой код прийдется додумывать, а если просто хочется что бы было мемо (а просто так для фишки) то пожалуйста такой вариант: В событии OnChange своего мемо прописываешь void __fastcall TForm1::Memo1Change(TObject *Sender) { String strPassword="пароль"; bool bDostup=false; for (int i=0; i<Memo1->Lines->Count; i++) { if (Memo1->Lines->Strings[i].Pos(strPassword)>0) bDostup=true; } Button1->Enabled=bDostup; } И все ![]() |
Автор: Klin 22.11.2002, 02:53 | ||
Спасибо! Ты правильно угадал! Пишим в мемо, лишь потому, есть элемнт стрингс или лайнес! Понял? P.S.
|
Автор: Klin 6.12.2002, 17:26 |
HexoGenus это получается, что если напишишь "пароль", то Button1->Enabled=true, но если напишишь "у меня есть пароль", то тоже самое произойдёт! Как от этого избавиться? |
Автор: Baa 6.12.2002, 17:39 |
Дык сравнивай строку целиком, а не ищи в ней это слово... убери Pos и сделай нормальное сравнение... |
Автор: Klin 6.12.2002, 17:54 |
Спасибо! Попробую. |
Автор: Klin 8.12.2002, 05:16 |
Идёт! А как несколько значений сделать знаешь? |
Автор: Baa 9.12.2002, 21:34 |
Эээ...слушай... выражайся яснее... каких значений? куда сделать? |
Автор: Klin 9.12.2002, 21:49 |
Извени, выражаюсь ясней: Такие как: парол, пароль-2, пароль-3 и т.п. |
Автор: Dagger 13.12.2002, 08:00 |
Че-то типа такой функции введи и вызывай ее себе сколько угодно;). *TEXT - аргумент с введенным паролем. pass - строковой массив с паролями... bool check(char *TEXT) char pass[][100]={{"faljl32j5jfopsja"},{"fjajl;jr324797fa"},...}; for(int i=0;i<sizeof(pass)/sizeof(pass[0]);i++){ if(strcmp(TEXT,pass[i])==0)return true; } return false; } |
Автор: Klin 14.12.2002, 02:55 |
А гдэ Мэмо? |
Автор: Dagger 14.12.2002, 06:16 | ||
Работает вот таким образом: вызываешь в нужном тебе контексте эту функцию: что-то типа, if(check(Memo1->Text)){do_somethink;} else {...} |
Автор: Klin 14.12.2002, 08:39 |
А, понял! |
Автор: Klin 16.12.2002, 17:58 | ||
![]() |