|
Список OLEDB провайдеров
|
|||
---|---|---|---|
#18+
Всем доброго дня, А как получить список OLEDB провайдеров .. типа как в окне (PB10) Database Profile при создании (редактировании) профиля DBMS= OLE Microsoft OLE DB. И как получить список NameSpace при редактировании профиля DBMS=ADO Microsoft ADO .NET Заказчик поставил задачу чтобы приложение умело коннектиться к разным БД (ASE12 и MSSQL2008) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2011, 10:59 |
|
Список OLEDB провайдеров
|
|||
---|---|---|---|
#18+
Вот .. поискал, нашел, кому интересно смотрите.. Пишется файл (обязательно .CPP) #include <atlbase.h> #include <atldbcli.h> extern "C" long WINAPI pbOLEDBProviders (LPSTR lpProviders[], long ArraySize) { long ll_cnt = 0; CoInitialize(NULL); CEnumerator rs; rs.Open(); while (rs.MoveNext() == S_OK && ll_cnt < ArraySize) { if (rs.m_nType == 1) { wcstombs((CHAR*)lpProviders[ll_cnt],(OLECHAR*)rs.m_szName,255); ll_cnt++; } } CoUninitialize(); return ll_cnt; }; Вызов и определение в PB 10.5: function long pbOLEDBProviders( ref string Providers[], long n) LIBRARY "pbusr32.dll" alias for "pbOLEDBProviders;Ansi" string is_OLEDBProvider[] long n, i, m for n = 1 to 100 is_OLEDBProvider[n] = Space(255) next n = pbOLEDBProviders(is_OLEDBProvider, n) for i = 1 to n ddlb_provider.AddItem(is_OLEDBProvider[i]) next вот как то так ... Остался вопрос как получить список Namespace для ADO .NET ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2011, 09:48 |
|
|
start [/forum/topic.php?fid=15&msg=37134991&tid=1335783]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
26ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
2ms |
others: | 308ms |
total: | 428ms |
0 / 0 |