Пароль
programmist Дата: Ср, 25 Августа 2010, 05:54 | Сообщение # 1
Подскажите пожалуйсто кто знает,Как сделать так чтобы после ввода правельного пароля ,при перезапуке программы он больше не требовал его ввести,.Зарание благодарен
Сообщение Подскажите пожалуйсто кто знает,Как сделать так чтобы после ввода правельного пароля ,при перезапуке программы он больше не требовал его ввести,.Зарание благодарен Автор - programmist Дата добавления - 25 Августа 2010 в 05:54
DEMBEL Дата: Ср, 25 Августа 2010, 08:38 | Сообщение # 2
нужно запомнить факт введения пароля, например сделать запись в реестре или файле. При перезапуске проверить, есть ли запись, если нет - то пароль не вводился, если да - то вводился. Если по серьезному, то следует записать в реестр шифрованный пароль или хэш пароля (например md5), и при старте читать его и сравнивать с паролем проги. операции для чтения/записи в реестр - RegistryRead/RegistryWrite, все остальное - здравый смысл и логика. долго не думал, поэтому тут глупо все, но в качестве демонстрации пойдет. Если в реестре записана единичка, значит пароль вводили верно )). но правильнее контролировать сам пароль.
Code
RegistryRead "HKEY_CURRENT_USER" "Test" "[test]" If "[test]" "<>" "1" InputBox "" "Введите пароль" "[paroli]" If "[paroli]" "<>" "123321" Balloon "Не правельно" "-1" "-1" "0" gotoline "exit" EndIf IfEx "[paroli] = 123321 AND [test] <> 1" ShowObject "Ellipse1" "Blocks" "10" RegistryWrite "HKEY_CURRENT_USER" "Test" "1" Endif Else ShowObject "Ellipse1" "Blocks" "10" EndIf :exit
Как задавать вопросы Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
Сообщение нужно запомнить факт введения пароля, например сделать запись в реестре или файле. При перезапуске проверить, есть ли запись, если нет - то пароль не вводился, если да - то вводился. Если по серьезному, то следует записать в реестр шифрованный пароль или хэш пароля (например md5), и при старте читать его и сравнивать с паролем проги. операции для чтения/записи в реестр - RegistryRead/RegistryWrite, все остальное - здравый смысл и логика. долго не думал, поэтому тут глупо все, но в качестве демонстрации пойдет. Если в реестре записана единичка, значит пароль вводили верно )). но правильнее контролировать сам пароль.
Code
RegistryRead "HKEY_CURRENT_USER" "Test" "[test]" If "[test]" "<>" "1" InputBox "" "Введите пароль" "[paroli]" If "[paroli]" "<>" "123321" Balloon "Не правельно" "-1" "-1" "0" gotoline "exit" EndIf IfEx "[paroli] = 123321 AND [test] <> 1" ShowObject "Ellipse1" "Blocks" "10" RegistryWrite "HKEY_CURRENT_USER" "Test" "1" Endif Else ShowObject "Ellipse1" "Blocks" "10" EndIf :exit
Автор - DEMBEL Дата добавления - 25 Августа 2010 в 08:38
Rezzoxe Дата: Ср, 25 Августа 2010, 08:49 | Сообщение # 3
Кидаем на форму два объекта, кнопку и эдитбокс. В кнопке прописываем:
Quote
If "[TextEntry1]" "=" "NeoBook" GotoNextPage RegistryWrite "HKEY_CURRENT_USER" "NB_Password" "Var" Else AlertBox "Ошибка" "Неверный пароль" EndIf
В свойствах страницы:
Quote
RegistryRead "HKEY_CURRENT_USER" "NB_Password" "[Var]" If "[Var]" "=" "Var" GotoNextPage Else EndIf
Не забудь проект из двух страниц.
Сообщение Кидаем на форму два объекта, кнопку и эдитбокс. В кнопке прописываем:
Quote
If "[TextEntry1]" "=" "NeoBook" GotoNextPage RegistryWrite "HKEY_CURRENT_USER" "NB_Password" "Var" Else AlertBox "Ошибка" "Неверный пароль" EndIf
В свойствах страницы:
Quote
RegistryRead "HKEY_CURRENT_USER" "NB_Password" "[Var]" If "[Var]" "=" "Var" GotoNextPage Else EndIf
Не забудь проект из двух страниц.
Автор - Rezzoxe Дата добавления - 25 Августа 2010 в 08:49
programmist Дата: Ср, 25 Августа 2010, 09:08 | Сообщение # 4
огромное " "сенкью"
Сообщение огромное " "сенкью" Автор - programmist Дата добавления - 25 Августа 2010 в 09:08
Rezzoxe Дата: Ср, 25 Августа 2010, 09:51 | Сообщение # 5
А вообще как писал товарищ Петр, лучше лишний раз в реестре юзера не мусорить, и воспользоваться текстовым файлом к примеру, но чтобы он под ногами не мешался, можно сунуть его внутрь проекта: Прописываем в кнопку:
Quote
If "[TextEntry1]" "=" "NeoBook" GotoNextPage FileWrite "[Embedded]Check.txt" "1" "Password" Else AlertBox "Ошибка" "Неверный пароль" EndIf
Прописываем в страницу:
Quote
FileRead "[Embedded]Check.txt" "1" "[Check]" If "[Check]" "=" "Password" GotoNextPage Else EndIf
Сообщение А вообще как писал товарищ Петр, лучше лишний раз в реестре юзера не мусорить, и воспользоваться текстовым файлом к примеру, но чтобы он под ногами не мешался, можно сунуть его внутрь проекта: Прописываем в кнопку:
Quote
If "[TextEntry1]" "=" "NeoBook" GotoNextPage FileWrite "[Embedded]Check.txt" "1" "Password" Else AlertBox "Ошибка" "Неверный пароль" EndIf
Прописываем в страницу:
Quote
FileRead "[Embedded]Check.txt" "1" "[Check]" If "[Check]" "=" "Password" GotoNextPage Else EndIf
Автор - Rezzoxe Дата добавления - 25 Августа 2010 в 09:51
Lab-service Дата: Ср, 25 Августа 2010, 11:36 | Сообщение # 6
Спасибо,мне эта информация тоже непомешает.
Сообщение Спасибо,мне эта информация тоже непомешает. Автор - Lab-service Дата добавления - 25 Августа 2010 в 11:36