Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.07.25;
Скачать: [xml.tar.bz2];

Вниз

Исключение при неустановленных драйверах   Найти похожие ветки 

 
Анонимщик ©   (2004-07-02 15:17) [0]

Использую IBX
При запуске клиентской программы происходит исключение еще до Application.Run, если драйвера FireBird"а не установлены. Назначение программа, в принципе, не ограничивается работой с БД, поэтому ставить их на клиенте иногда не нужно.
Как можно побороть?


 
Соловьев ©   (2004-07-02 15:24) [1]


>  исключение еще до Application.Run,

зато во время коннекта к БД у тебя же наверное датабейз коннект автоматом коннектится


 
Reindeer Moss Eater ©   (2004-07-02 15:40) [2]

Если библиотеки линкуются статически, то никак.


 
Анонимщик ©   (2004-07-02 15:52) [3]

Соловьев.
Нет.

Reindeer Moss Eater
И что сделать, чтобы поменьше менять?


 
Соловьев ©   (2004-07-02 16:00) [4]


> Нет.

да :)


 
Соловьев ©   (2004-07-02 16:00) [5]


> Нет.

да :)


 
Анонимщик ©   (2004-07-02 16:02) [6]

Я же сказал: нет.


 
Соловьев ©   (2004-07-02 16:05) [7]

берем пишем при Create модуля данных:
try
IBDatabase.Connected := true;
except
end;
и не будет исключения.


 
Reindeer Moss Eater ©   (2004-07-02 16:17) [8]

А зачем создавать модуль данных всегда, если программа не ограничена работой с БД?


 
Анонимщик ©   (2004-07-02 16:24) [9]

Я же сказал уже.
И потом, мне незачем писать
IBDatabase.Connected := true
поскольку при Create я еще пути не знаю.
Ты бы проверил сначала, а потом отвечал.
Просто брось на форму TIBDataBase и больше ничего не делай, кроме билда. А потом запусти экзешник на машине без gds32.dll, и больше не умничай, хорошо?


 
Reindeer Moss Eater ©   (2004-07-02 16:26) [10]

Ты дарагой сам не умничай.
И читай пост № 2


 
Anatoly Podgoretsky ©   (2004-07-02 16:27) [11]

Убрать из проекта БД


 
Анонимщик ©   (2004-07-02 16:28) [12]

Reindeer Moss Eater
Это неважно, создается он как Create или нет. Исключение все равно будет, как Вы правильно заметили, коль компоновка статическая


 
Reindeer Moss Eater ©   (2004-07-02 16:29) [13]

Выход - переписать библиотеку IBX


 
Анонимщик ©   (2004-07-02 16:31) [14]

Reindeer Moss Eater
Это я не Вам писал, а Соловьеву


 
Reindeer Moss Eater ©   (2004-07-02 16:31) [15]

Либо бить свою приладу на DLL/пакеты, выносить все IB-dependent туда, и грузить опционально, проверив наличие gds


 
Анонимщик ©   (2004-07-02 16:33) [16]

Reindeer Moss Eater
Может, чего-то в ее исходниках (IBX) подправить? Мне бы самый простой способ.


 
Соловьев ©   (2004-07-02 16:35) [17]


> Просто брось на форму TIBDataBase и больше ничего не делай,
> кроме билда

ну создавай обьект сам.


 
Reindeer Moss Eater ©   (2004-07-02 16:36) [18]

Ну я в них не глядел.

Но способ-то простой (хотя и трудоемкий)
Найти интерфейс с gds и переписать все на динамический импорт, добаваив процедуру загрузки/инициализации по требованию


 
Соловьев ©   (2004-07-02 16:44) [19]


> Просто брось на форму TIBDataBase и больше ничего не делай,
> кроме билда. А потом запусти экзешник на машине без gds32.dll,
> и больше не умничай, хорошо?


procedure TDm.DataModuleCreate(Sender: TObject);
var ibd: TIBDatabase;
begin
       try
               ibd := TIBDatabase.Create(DM);
               showmessage("gds32.dll есть");
       except
               showmessage("gds32.dll нет");
       end;
end;

запустил на машине где нету библиотеки - все нормально.
ОС XP


 
Reindeer Moss Eater ©   (2004-07-02 16:53) [20]

Глянул в ibintf.pas.
Нету там статического импорта.
Там он динамический.

Главное не допустить вызова
procedure LoadIBLibrary;

раньше, чем это реально надо


 
Анонимщик ©   (2004-07-02 17:48) [21]

Убедили, спасибо.



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

Форум: "Базы";
Текущий архив: 2004.07.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.037 c
1-1089636739
Aleksandr.
2004-07-12 16:52
2004.07.25
Есть ли надежный метод отличить строку OEM от ANSI?


14-1089300094
СатирЪ
2004-07-08 19:21
2004.07.25
Proxies.dcu


1-1089603759
Belocarsk
2004-07-12 07:42
2004.07.25
TreeView+картинки ,без ImageList


14-1088838650
Knight
2004-07-03 11:10
2004.07.25
Что в психушках вообще туго с финансированием стало?


10-1024206158
jo frodo
2002-06-16 09:42
2004.07.25
rebind() в INS





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский