C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Как получить DATA SOURCE NAMES (DSN) / Базы данных / Visual C++

Как получить DATA SOURCE NAMES (DSN)

void GetDSN()
{
CWaitCursor Wait;
SQLHENV henv;
RETCODE RetCode;
short len1,len2;
CString strValue;
unsigned char *ucpDSN;
ucpDSN=(unsigned char*)malloc(256);
unsigned char *ucpDescription ;             // Содержит описание ODBC драйвера для DSN
ucpDescription=(unsigned char*)malloc(256);
RetCode=::SQLAllocEnv(&henv);               // выделаем дескриптор окружения

if(RetCode == SQL_SUCCESS || RetCode == SQL_SUCCESS_WITH_INFO) // Если распределение успешно
{
    while(RetCode!=SQL_NO_DATA)
    {
       // Fetch available data sources
       RetCode=::SQLDataSources(henv, SQL_FETCH_NEXT, ucpDSN, 256, 
                                &len1, ucpDescription , 256, &len2);
      if (RetCode!=SQL_NO_DATA)                // Если данные существуют
      {
          strValue.Format("%s-%s",(LPCTSTR)ucpDSN,(LPCTSTR)ucpDescription);
          if(!strValue.IsEmpty())
                 AfxMessageBox(strValue);        // Отображаем DSN Имена

         memset(ucpDSN,'\0',sizeof(ucpDSN));  // Очищаем буфер
      }
   }
}

delete ucpDescription;
delete ucpDSN;
::SQLFreeEnv(henv);                // free environment handle
henv = NULL;
}