![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
конфигурация ODBC [D7, MySQL]
Sir John © (2004-07-08 13:33:00)Коллеги, возможно ли программно отконфигурировать ODBC? Или существуют ли инсталяторы, которые делают это на этапе установки програмы?
Sir John (2004-07-09 09:51:00) [1]Проблема до ужаса простая оказалась. Экспортируем нужные настройки ODBC в reg файл и запихиваем в инсталятор. Уносим на "чистую" машину. При установке инсталятор прописывает все сам.
Спасибо за приведеный код. ПОложил в архивчик. В жизни оно все пригодится :)
Курдль (2004-07-08 14:07:00) [2]Вот рабочий скрипт установки 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;
Ильш (2004-07-08 13:57:00) [3]отконфигурировать ODBC - Сэру Johnу поможет Лорд РЕЕСТР !!!
Sir John (2004-07-08 13:54:00) [4]знать бы еще куда их прописывать - написал бы свою собственную программу-кнфигуратор.
Курдль (2004-07-08 13:53:00) [5]Да любая! Причем, я думаю, это любой инсталлер делать может - прописать в реестр нужные данные.
Sir John (2004-07-08 13:51:00) [6]версия?
Курдль (2004-07-08 13:45:00) [7]Существуют. Install Shield