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

Вниз

Как совместить сессию и TDataBase потока с bdeAPI?   Найти похожие ветки 

 
Aleksandr.   (2004-08-27 15:41) [0]

Согласно правилам, каждый поток должен для работы с БДЕ юзать свой TSession и свой TDataBase. Но у меня в этих потоках истчо и выполняются функции BDE типа dbiDoRestructure и dbiPackTable, для которых функция dbiOpenDataBase наверняка ведь возвращает какой-то свой хэндл и сессию, не совпадающие с VCL-овскими. А как их совместить?


 
clickmaker ©   (2004-08-27 15:50) [1]

TSession.Handle
TDatabase.Handle


 
Aleksandr.   (2004-08-27 15:59) [2]

Понял, спасибо.


 
Aleksandr.   (2004-08-27 16:15) [3]

Не, не понял.
Вот функция DbiGetLDName для получения языка таблицы, у нее в параметрах вообще не юзается никакой хендл. А ведь наверняка при ее вызове она в нарушение правила каку-то свою сессию и свою hDBIDB откроет...


 
clickmaker ©   (2004-08-27 16:29) [4]


> [3] Aleksandr.   (27.08.04 16:15)

а что тебе это так волнует? пусть открывает на здоровье


 
Aleksandr.   (2004-08-27 16:51) [5]

clickmaker ©  :
Так а если она через системную сессию полезет? Из другого-то потока?


 
clickmaker ©   (2004-08-27 17:52) [6]


> [5] Aleksandr.   (27.08.04 16:51)

Дык а в чем проблема-то? Не срабатывает функция, что-ли?


 
Aleksandr.   (2004-08-27 18:30) [7]

clickmaker ©  :
Проблема в том, что поток вешается в системе (и никакими ТерминатеТреад не снимается), если внутри него работа с БДЕ проводится не через собственные ДатаБазе и Сессион. В какой-то гнусный момент происходит сбой БДЕ и все - до свидания.


 
clickmaker ©   (2004-08-27 18:48) [8]


> [7] Aleksandr.   (27.08.04 18:30)

а если DbiInit вызвать в этом потоке?


 
Aleksandr.   (2004-08-27 19:34) [9]

Не помогает.



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

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

Наверх





Память: 0.45 MB
Время: 0.034 c
14-1094235781
Piter
2004-09-03 22:23
2004.09.26
Насчет списка погибших


3-1093618349
ceval
2004-08-27 18:52
2004.09.26
Нужно поле mr вывести в DBText


1-1094978995
Quest
2004-09-12 12:49
2004.09.26
Настройки в файле *.dsk


1-1094665692
CBOLOCH
2004-09-08 21:48
2004.09.26
виснет Delphi 7


14-1094213765
}|{yk
2004-09-03 16:16
2004.09.26
Не мог бы кто проконсультировать...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский