WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  C / C++ / Visual C++
  CDatabase and login

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   CDatabase and login
SBV опубликован 27-11-2001 18:11 MSK   Click Here to See the Profile for SBV   Click Here to Email SBV  
Привет All!

Проблема в следующем.
При коннекте к Interbasе' базе методом Open

CDatabase mDB;
mDB.Open(_T("my_ODBC_DNS"),FALSE,FALSE,_T("ODBC;UID=MY_NAME;PWD=MY_PASS;"),...);

выскакивает окошко логина в базу, с заполнеными полями, с ожиданием подтвеждения.

Как сконнектится с базой без диалога.
В VCL в TDatabase есть свойтво, позволяющее отключать диалог. А в CDatabase?

Работаю в NT, VC6, FireBird 0.93, ODBC - INTERSOLVE (вроде-бы так пишется).

Надеюсь на ответ!

MadiSoft опубликован 30-11-2001 16:33 MSK     Click Here to See the Profile for MadiSoft  Click Here to Email MadiSoft     

CDatabase mDB;
mDB.Open(_T("my_ODBC_DNS"),FALSE,FALSE,_T("ODBC;UID=MY_NAME;PWD=MY_PASS;"),...);

CString sDsn;
mDB.OpenEx(sDsn,CDatabase::noOdbcDialog) ;

sDsn - Твоя строка коннекта

SBV опубликован 01-12-2001 17:30 MSK     Click Here to See the Profile for SBV  Click Here to Email SBV     
2MadiSoft

Проблема оказалась в ODBC драйвере.
Поставил Genesis - все заработало.

А OpenEx с флагом CDatabase::noOdbcDialog
не открывает диалог выбора источника данных,
а логин всеравно открывается, если не указать
UID и PWD.

MadiSoft опубликован 01-12-2001 17:46 MSK     Click Here to See the Profile for MadiSoft  Click Here to Email MadiSoft     
Такого быть не может у меня прекрасно все работало.
И ничего не выходило если коннект был правельный.

Ивообще зачем тебе работать через Alias ,лучше напрямую с базой.

SBV опубликован 01-12-2001 18:04 MSK     Click Here to See the Profile for SBV  Click Here to Email SBV     
А какие библиотеки есть для прямого доступа
к IB из VC, или через IB API?
MadiSoft опубликован 01-12-2001 19:06 MSK     Click Here to See the Profile for MadiSoft  Click Here to Email MadiSoft     
Я имею ввиду через ODBC но минуя DSN.

Например так:

CDatabase database;
CString sDriver = "название_драйвера_в_ODBC-менеджере";
CString sDBFileName= "имя_и_путь_для_DB";
CString sDsn;
CString sPassword="Мой_пароль";

TRY
{
// Форматируем строку для доступа минуя DSN

sDsn.Format("ODBC;PWD=%s;DRIVER={%s};DSN='';DBQ=%s",sPassword,sDriver,sDBFileName);

if( database.OpenEx(sDsn,CDatabase::noOdbcDialog) )
{
...

SBV опубликован 01-12-2001 20:09 MSK     Click Here to See the Profile for SBV  Click Here to Email SBV     
Но согласись, в этом случае мы теряем в
гибкости, прошивая путь к базе в
исходнике. Можно конечно запрашивать
путь у юзера, но мне кажется получится
просто дублирование алиаса.
MadiSoft опубликован 01-12-2001 22:10 MSK     Click Here to See the Profile for MadiSoft  Click Here to Email MadiSoft     
Так надо ещё посмотреть для каких целей данная база.
Можно просто закинуть к себе в корневой каталог.

И почему база может окозаться в каком-нибудь другом месте.

И ещё вопрос как ты алиас создаёш програмно или вручную и вообще кто его создаёт.

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.