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

Вниз

Проблема дисконнекта в InterBase6.5   Найти похожие ветки 

 
GekaNaz ©   (2004-12-07 10:27) [0]

Помогите пожалуйста ! недавно в форуме откопал статью автор: Ivan_Ra, где описано как исправить исходники, чтобы при обрыве каннекта(от удалённого сервера), не происходило зависание программы...
 В итоге : исправил исходники, а скомпилировать не могу: пишет , что один из модулей был скомпилирован с другой версией другого (используемого модуля).. как быть ?


 
GekaNaz ©   (2004-12-07 11:45) [1]

Как скомпилировать исправленные исходники InterBase ??? подскажите пожалуйста !


 
ЮЮ ©   (2004-12-07 11:48) [2]

и его перекомпили :)


 
Johnmen ©   (2004-12-07 12:16) [3]

Если исходники InterBase, то обращайся к сишникам.
Если исходники компонент доступа к IB, то удали все дку"шки, потом скомпилируй проект.


 
GanibalLector ©   (2004-12-07 12:54) [4]

статья ивана_ра не рабочая.На ibase.ru найди еще одну...вот по ней и действуй.Я по ней творил...все заработало!Успехов.
З.Ы. А с Иваном_РА сидел неделю...так нифига и не получилось :(


 
GanibalLector ©   (2004-12-07 12:58) [5]

У тя Д7,а там,по слухам все исправленно.Проверь!Я делал для Д5,вот там,действительно был обрыв с AV


 
GekaNaz ©   (2004-12-07 17:36) [6]

для  GanibalLector ©   (07.12.04 12:54) [4]
поискал, но не могу найти , если не сложно, напиши как называется тема или статья, или лучше ссылку закинь, буду очень благодарен ...
а на счет Д7, так прога колом встаёт, и больше не хочет работать после дисконнекта :(


 
GanibalLector ©   (2004-12-08 01:15) [7]

http://ibase.ru/fibc/ibx_disc.htm


 
GekaNaz ©   (2004-12-09 10:48) [8]

Спасибо,
сделал, скомпилил,
только вот теперь не могу стартануть транзакцию после дисконнекта
говорит, что хост принудительно разорвал соединение


 
GekaNaz ©   (2004-12-09 10:52) [9]

после выделенной строки (функция Call) происходит ошибка , при попытке стартануть транзакцию,
чтобы приконнектиться к базе я делаю так :
Database.Connected:=false;
Database.Connected:=true;
Transaction.StartTransaction;
//===========================================

procedure TIBTransaction.StartTransaction;
var
 pteb: PISC_TEB_ARRAY;
 TPB: String;
 i: Integer;
begin
 CheckNotInTransaction;
 CheckDatabasesInList;
 for i := 0 to FDatabases.Count - 1 do
  if  FDatabases[i] <> nil then
  begin
    with TIBDatabase(FDatabases[i]) do
    if not Connected then
      if StreamedConnected then
      begin
        Open;
        StreamedConnected := False;
      end
      else
        IBError(ibxeDatabaseClosed, [nil]);
  end;
 if FTRParamsChanged then
 begin
   FTRParamsChanged := False;
   GenerateTPB(FTRParams, TPB, FTPBLength);
   if FTPBLength > 0 then
   begin
     IBAlloc(FTPB, 0, FTPBLength);
     Move(TPB[1], FTPB[0], FTPBLength);
   end;
 end;

 pteb := nil;
 IBAlloc(pteb, 0, DatabaseCount * SizeOf(TISC_TEB));
 try
   for i := 0 to DatabaseCount - 1 do if Databases[i] <> nil then
   begin
     pteb^[i].db_handle := @(Databases[i].Handle);
     pteb^[i].tpb_length := FTPBLength;
     pteb^[i].tpb_address := FTPB;
   end;

//Здесь он и запарывается :(
   if Call(isc_start_multiple(StatusVector, @FHandle,
                              DatabaseCount, PISC_TEB(pteb)), False)
> 0 then
   begin
     FHandle := nil;
     IBDataBaseError;
   end;
   if not (csDesigning in ComponentState) then
     MonitorHook.TRStart(Self);
 finally
   FreeMem(pteb);
 end;
end;


 
GanibalLector ©   (2004-12-09 13:30) [10]

>Только вот теперь не могу стартануть транзакцию после дисконнекта  говорит, что хост принудительно разорвал соединение

Тут я тебе не помошник.Я при обрыве выводил сообщение юзеру и закрывал программу.


 
GekaNaz ©   (2004-12-09 18:16) [11]

ну может кто-нить шарит ??? подскажите плиз, как избавиться от этой проблемы ???


 
GekaNaz ©   (2004-12-11 15:19) [12]

Кто разбирается в исходниках ?  или механизме работы InterBase ?
Я уверен, что я не единственный, кто столкнулся с такой проблемой ...


 
GanibalLector ©   (2004-12-11 16:29) [13]

Кстати,а чем тебя не устраивает [10]?Закрыл и все...Ведь могут сервак выключить.Что тогда?



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

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

Наверх




Память: 0.5 MB
Время: 0.025 c
14-1103720342
AlexG
2004-12-22 15:59
2005.01.16
Срочно!!! Нужна работа с з/п 900 уе


6-1098974395
Павел
2004-10-28 18:39
2005.01.16
Сокеты


1-1104141336
SbtON
2004-12-27 12:55
2005.01.16
Идентификатор потока.


1-1104758879
SeriousSam
2005-01-03 16:27
2005.01.16
Мигание кнопки программы в панели задач.


14-1103870137
Жук
2004-12-24 09:35
2005.01.16
Сломали ?