Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.01;
Скачать: CL | DM;

Вниз

конфигурация ODBC   Найти похожие ветки 

 
Sir John ©   (2004-07-08 13:33) [0]

Коллеги, возможно ли программно отконфигурировать ODBC? Или существуют ли инсталяторы, которые делают это на этапе установки програмы?


 
Курдль ©   (2004-07-08 13:45) [1]

Существуют. Install Shield


 
Sir John ©   (2004-07-08 13:51) [2]

версия?


 
Курдль ©   (2004-07-08 13:53) [3]

Да любая! Причем, я думаю, это любой инсталлер делать может - прописать в реестр нужные данные.


 
Sir John ©   (2004-07-08 13:54) [4]

знать бы еще куда их прописывать - написал бы свою собственную программу-кнфигуратор.


 
Ильш ©   (2004-07-08 13:57) [5]

отконфигурировать ODBC - Сэру Johnу поможет Лорд РЕЕСТР !!!


 
Курдль ©   (2004-07-08 14:07) [6]

Вот рабочий скрипт установки Sybase ASA + ODBC - разбирайся (лень разжевывать)

function SetupRegistry()
   NUMBER nResult, nvInfo, nvType, nvSize;
   STRING key, tempPath, asaDir, sharedDir, szComponent, svInfo;
   STRING szDriverName, szDriverDLL, szDsnName, szDsnNameClient, szDsnNameUltraLite, szTransName, szTransDLL;
begin
szComponent = "ХЗХЗ\\Interfaces";
   
         
   // Проверить в случае выборочной инсталляции установку клиента
ComponentGetData (MEDIA, szComponent, COMPONENT_FIELD_SELECTED, nvInfo, svInfo);
if (nvInfo != 1) then
 return 0;        
endif;

   nResult = CreateRegistrySet( "" );

   RegDBSetDefaultRoot( HKEY_LOCAL_MACHINE );
   asaDir = TARGETDIR ^ "ASA";
   sharedDir = asaDir ^ "shared";
   key = "SOFTWARE\\Sybase\\Adaptive Server Anywhere\\8.0";
   
   if (RegDBGetKeyValueEx ( key, "Location", nvType, asaDir, nvSize) < 0) then
 // Клиент ставится на чистую машину
    asaDir = TARGETDIR ^ "ASA";
    RegDBSetKeyValueEx( key, "Location", REGDB_STRING, asaDir, -1 );
    RegDBSetKeyValueEx( key, "Shared Location", REGDB_STRING, sharedDir, -1 );
   endif;

   // Setup a DSN for your database.
   
   szDriverName = "Adaptive Server Anywhere 8.0";
   szDsnName = "LEAgent";
   szDsnNameClient = "LEAgent";
   szDsnNameUltraLite = "LEAgent";
   szDriverDLL = TARGETDIR ^ "win32" ^ ODBC_DRIVER;

   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI\\ODBC Data Sources",
                      szDsnName, REGDB_STRING, szDriverName, -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "Driver", REGDB_STRING, szDriverDLL, -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                      "Description", REGDB_STRING, "Insurance agent", -1 );
//    RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
//                        "UID", REGDB_STRING, "dba", -1 );
//    RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
//                       "PWD", REGDB_STRING, "sql", -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "DatabaseName", REGDB_STRING, "LEAgent", -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "EngineName", REGDB_STRING, "LEAgent", -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "AutoStop", REGDB_STRING, "yes", -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "Compress", REGDB_STRING, "NO", -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "Debug", REGDB_STRING, "NO", -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "Integrated", REGDB_STRING, "NO", -1 );
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "DisableMultiRowFetch", REGDB_STRING, "NO", -1 );
                         
   RegDBSetKeyValueEx( "SOFTWARE\\ODBC\\ODBC.INI" ^ szDsnName,
                       "CommLinks", REGDB_STRING, "SharedMemory, TCPIP{}", -1 );
   return nResult;
end;


 
Sir John ©   (2004-07-09 09:51) [7]

Проблема до ужаса простая оказалась. Экспортируем нужные настройки ODBC в reg файл и запихиваем в инсталятор. Уносим на "чистую" машину. При установке инсталятор прописывает все сам.
Спасибо за приведеный код. ПОложил в архивчик. В жизни оно все пригодится :)



Страницы: 1 вся ветка

Текущий архив: 2004.08.01;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.054 c
1-1089896858
faost
2004-07-15 17:07
2004.08.01
StringGrid+ComboBox?


1-1089895114
Qwer
2004-07-15 16:38
2004.08.01
ComboBox


14-1089396760
Mell
2004-07-09 22:12
2004.08.01
Кто нить знает хоть один адрес типа рамблер.ру русскими буквам


8-1083744484
rand0m
2004-05-05 12:08
2004.08.01
Морфинг


6-1085766580
Senti
2004-05-28 21:49
2004.08.01
Вопрос по потокам с использование функции GetHostByAddr