powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сообщения при коннекте ADP к MS SQL Server'у
3 сообщений из 3, страница 1 из 1
Сообщения при коннекте ADP к MS SQL Server'у
    #32824874
Фотография Remblyn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите как мне заменить стандартные окна при коннекте к Серверу на свои?
например я ввожу логин и пароль в стандартное окно коннекта АDP к SQL server-у... при ошибке, выскакивает сообщение типа: "Login Failed..."... и кнопка "ОК"... как мне изменить фразу на " Неправильный Логин\Пароль, попробуйте еще раз..."?
...
Рейтинг: 0 / 0
Сообщения при коннекте ADP к MS SQL Server'у
    #32824964
Создать свою форму для диалогового окна подключения и написать к ней свой код, какой только захотите. Когда мне потребовалось - я написал, ничего сложного.

Идея тут такая: при перед выходом из приложения всякий раз отключать ADP от сервера, чтобы он в таком виде и сохранился, а при старте - вновь подключать своим кодом, перехватывая ошибки. Смысл приведения файла ADP всякий раз перед новым стартом в отключенное состояние в том, что если этого не сделать, то может случиться так, что система при определённых обстоятельствах будет пытаться соединиться с сервером до того , как ваш код, инициализирующий приложение, получит управление.

Для эмуляции события "выход из приложения" следует использовать событие Unload скрытой формы, остающейся открытой в течение всего времени работы приложения (её событие Close уже не будет вызвано). В частности, в качестве такой формы хорошо подходит стартовая форма (заставка), но это уже на ваш вкус.

Вот эта строка отключает ADP от сервера, стирая строку подключения (это именно то, что в данном случае надо, поскольку метод CurrentProject.CloseConnection свойства подключения не стирает и мало того, иногда без внятной причины порождает ошибку 6008):
Код: plaintext
Application.CurrentProject.OpenConnection ""

Для подключения к базе данных используется тот же метод, в качестве аргумента которому передаётся сконструированная строка подключения, примерно так (идентификация пользователя сервером MS SQL, а не trusted connection):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Set frm = Application.Forms(cstrLoginFormName)

strConnString = "PROVIDER=SQLOLEDB.1;PERSIST SECURITY INFO=FALSE;PASSWORD=" & _
        CStr(Nz(frm.Controls("Password").Value, "")) & _
    ";USER ID=" & _
        CStr(Nz(frm.Controls("Login").Value, "")) & _
    ";INITIAL CATALOG=" & _
        CStr(Nz(frm.Controls("Database").Value, "")) & _
    ";DATA SOURCE=" & _
        CStr(Nz(frm.Controls("Server").Value, ""))

Application.CurrentProject.OpenConnection strConnString
...
Рейтинг: 0 / 0
Сообщения при коннекте ADP к MS SQL Server'у
    #32824990
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, об отключении.

Аналогичная идея - при выходе отключать библиотеки ADODB, ADOX и др., оставляя только необходимые built-in. Тогда при запуске приложения можно правильно подключить именно те версии, которые имеются на машине данного пользователя. Таким образои обеспечивается функционирование приложения под разными Аксесами/Офисами - 2000/XP/2003.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сообщения при коннекте ADP к MS SQL Server'у
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]