Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как предотвратить появление окна запроса пароля PasswordDialog? [D7]


ABolnykh ©   (2010-09-28 10:52:00) 

Есть старая программа, работающая с запароленной базой данных Paradox.
Открытие базы в программе производится известным образом:

session.AddPassword('Мой секретный пароль');
table1.active := true;

Через Database Desktop поменял мастер-пароль на таблицы.
В программе прописал новый пароль.
Всё работает ОК, НО!!! При попытке открытия старой базы данных новой программой появляется окно запроса пароля PasswordDialog, что мне совсем не нужно.

Можно ли в моём случае предотвратить появление окна PasswordDialog? Нужно, чтобы программа просто завершала свою работу с каким-нибудь сообщением в случае несовпадения пароля.

try
 table1.active := true;
except .....

не помогает, окно запроса пароля всё равно появляется.


DiamondShark   (2010-10-13 10:24:00) [1]


> свойство LoginPrompt есть у компонента TDataBase, который
> я не использую.

Это не значит, что его не существует.
Он всё равно создаётся неявным образом.


Германн   (2010-09-30 02:23:00) [2]


> Как предотвратить появление окна запроса пароля PasswordDialog?


TSession.OnPassword пробовал?

If an OnPassword event does not exist, but the BDE reports insufficient access rights, Delphi displays a default dialog box that prompts for a password.


Медвежонок Пятачок   (2010-09-29 13:56:00) [3]

первое что сделает хитро?опый юзер - это встанет на твой project1.exe и нажмет shift+del
затем возьмет твои файлы парадокса и снимет с них пароль вообще.


Медвежонок Пятачок   (2010-09-29 13:20:00) [4]

мда. кто бы мог подумать .....


ABolnykh   (2010-09-29 12:51:00) [5]

Вот именно для того и нужно спрятать окошко для ввода пароля, чтобы хитро?опому юзеру было некуда ввести универсальный.


Anatoly Podgoretsky   (2010-09-29 11:48:00) [6]

> Германн  (29.09.2010 02:25:10)  [10]

Я подскажу, чтобы лишить иллюзий, запрос "Пароли к Парадокс", искал в
яндексе, пятая ссылка, далее я даже и смотреть не стал.


Anatoly Podgoretsky   (2010-09-29 11:45:00) [7]

> Германн  (29.09.2010 02:25:10)  [10]

Чтобы открыть таблицу Парадокса в Экселе надо обладать недюженными знаниями,
ты видимо перепутал с dBase IV


Германн   (2010-09-29 02:25:00) [8]


> Anatoly Podgoretsky ©   (28.09.10 21:29) [9]

По большому счёту конечно да. Нафиг.
Но уж если мы соглашаемся обсуждать на ДМ "детские" способы защиты типа шифрования XOR, то и пароли к Парадоксу сгодятся.
Ибо парадоксовскую таблицу не "закрытую" паролем может открыть любой юзер более-менее знакомый с MS Office (в частности с MS Office Access). Но не всякий из вышеуказанных способен сообразить что искать в Гугле в случае неудачи.


Anatoly Podgoretsky   (2010-09-28 21:29:00) [9]

Нафиг вообще задавать, при наличии универсальных паролей.
Любой не ленивый человек найдет его за несколько секунд в Гугле.


Германн   (2010-09-28 21:20:00) [10]


> AddPassword

Этим методом можно добавить более одного пароля.


Loginov Dmitry   (2010-09-28 20:24:00) [11]


> Через Database Desktop поменял мастер-пароль на таблицы.
>
> В программе прописал новый пароль.
> Всё работает ОК, НО!!! При попытке открытия старой базы
> данных новой программой появляется окно запроса пароля PasswordDialog,
>  что мне совсем не нужно.


Зачем пароль менял?


Anatoly Podgoretsky   (2010-09-28 14:58:00) [12]

> ABolnykh  (28.09.2010 13:57:02)  [2]

Если у тебя нет явного, то это ничего не значит.


ABolnykh   (2010-09-28 14:54:00) [13]

> Виталий Панасенко(дом)   (28.09.10 14:05) [3]
>
> При попытке открытия старой базы данных новой программой

В старой базе - старый пароль, в новой программе - новый пароль, и они не совпадают. Потому и появляется окно запроса пароля, которое и требуется запретить.


Медвежонок Пятачок   (2010-09-28 14:06:00) [14]

Посмотрел в Хэлпе: свойство LoginPrompt есть у компонента TDataBase

сам спросил, сам ответил


Виталий Панасенко(дом)   (2010-09-28 14:05:00) [15]


> Всё работает ОК, НО!!! При попытке открытия старой базы
> данных новой программой появляется окно запроса пароля PasswordDialog,
>  что мне совсем не нужно.

это что, там другйо пароль ? не

> session.AddPassword('Мой секретный пароль');

?


ABolnykh   (2010-09-28 13:57:00) [16]

Специально я никого не включал. :)

Посмотрел в Хэлпе: свойство LoginPrompt есть у компонента TDataBase, который я не использую. У меня же в программе используется связка TTable - TDataSource, как пристегнуть к которой этот самый LoginPrompt (или придумать другой способ запрета появления окна ввода пароля) - непонятно.
:(((


Anatoly Podgoretsky   (2010-09-28 11:18:00) [17]

> ABolnykh  (28.09.2010 10:52:00)  [0]

Может ты включил LoginPrompt


Наверх

Титульная страница Поиск, карта сайта Написать письмо