|
#1
|
|||
|
|||
DSN system
написал прогу. но потом столкнулся с проблемой распространения другим, то есть заказчики не хотят сами что-то устанавливать и где-то добавлять...
Короче говоря Нужно создать в ODBC SYSTEM DSN для Код:
"Microsoft Paradox Driver (*.db )" или как можно в регистр добавить программно такой текст: Код:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\Paradox] "Driver"="C:\\WINDOWS\\system32\\odbcjt32.dll" "DriverId"=dword:0000021a "FIL"="Paradox 5.X;" "SafeTransactions"=dword:00000000 "UID"="All Users" [HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources] "Paradox"="Microsoft Paradox Driver (*.db )" [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\Paradox\Engines] [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\Paradox\Engines\Paradox] "CollatingSequence"="ASCII" "ImplicitCommitSync"="" "PageTimeout"=dword:00000005 "ParadoxNetPath"="C:\\WINDOWS\\system32" "ParadoxNetStyle"="4.x" "ParadoxUserName"="All Users" "Threads"=dword:00000003 "UserCommitSync"="Yes" |
#2
|
||||
|
||||
Код:
uses Registry; var R :TRegistry; begin try R:=TRegistry.Create; R.RootKey:=HKEY_LOCAL_MACHINE; R.OpenKey('путь в реестре',True); R.WriteString('имя параметра','значение'); R.CloseKey; Except R.Free; end; end; П.С. Хотя я бы добавил дистрибутив БДЕ в инсталятор программы и установил всё это одним махом Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
Последний раз редактировалось Yurk@, 03.10.2009 в 17:40. |
#3
|
|||
|
|||
Цитата:
Я ДОбаляю инсталяцию БДЕ, но Алиас в DSN оно не добавляет, если знаешь метод поделись плз... я инстал БДЕ делаю так Код:
if (DbiInit(nil) <> DBIERR_NONE) then if Application.MessageBox('For work with programm, need BDE.'#13#13'Intalling its component?', 'Attention!' , MB_APPLMODAL or MB_YESNO or MB_ICONQUESTION) = 6 then begin FillChar(SI, SizeOf(SI), 0); SI.cb := SizeOf(SI); CreateProcess(nil, 'regsvr32 /s BdeInst.dll', nil, nil, False, CREATE_DEFAULT_ERROR_MODE, nil, nil, SI, P); WaitForSingleObject(P.hProcess, INFINITE); CloseHandle(P.hProcess); CloseHandle(P.hThread); SetForegroundWindow(Application.Handle); end else Exit; |
#4
|
||||
|
||||
а вот от алиаса лучше вообще отказаться ... для локальных БД лучше применить полный путь к файлу ...
Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#5
|
|||
|
|||
Спасибо. Тему можно закрыть!
|