Форум » [x]Harbour » Cписок алиасов » Ответить

Cписок алиасов

Dima: Как получить список всех открытых баз данных ? Либо в виде алиасов либо номеров рабочих областей. Можно конечно сделать самопал , но вдруг что то готовое есть и эффективное.

Ответов - 32, стр: 1 2 All

Dima: Pasha Интересно , спасибо. А что делает вот эта функция (из описания не очень понял) function hb_waRelEval(), remove unused local variable int iChildArea Вольный перевод: удаление не используемых локальных переменных в дочерней области

Pasha: Что-то я не найду такой функции. Есть метод rdd в workarea.c c таким же названием, но назначение у него другое. Где она находится ?

Dima: Pasha пишет: Где она находится ? Откопал в ChangeLog.txt когда искал сведения о hb_waEval()


Pasha: Это базовый метод rdd для реализации relations, из харбор-уровня он недоступен. Он касается внутренней реализации rdd. Просто название похожее оказалось.

Dima: Haz пишет: adsConnect60( cBasePath + "\" + cBase + ".add", 0, "SystemProcess", 'SystemProcess', nServerType, @hConnection ) похоже это не правильно вот так надо adsConnect60( cBasePath + "\" + cBase + ".add", nServerTypes, "SystemProcess", 'SystemProcess', nOptions, @hConnection ) а у тебя перепутаны местами nServerTypes и nOptions или я не прав ?

Haz: Dima пишет: похоже это не правильно мож быть , не задумывался т.к. работало перепутаны однозначно

Haz: Дима , спасибо . Исправил во всех своих исходниках странно что все работало, такое впечатление что ADS по барабону )))) сверился с https://github.com/harbour/core/blob/master/contrib/rddads - точно напутал лет так 5 назад и ничего ))

Andrey: Dima пишет: Как получить список всех открытых баз данных ? Либо в виде алиасов либо номеров рабочих областей. aBase := {} FOR nI:=1 TO myFILESFREE() // для харбора сделал 1024, т.к. не нашел в своё время замену этой функции SELECT(nI) IF USED() == .T. cStr:=STR(nI,3)+".│"+DBSETDRIVER()+" │"+STR(DBINFO(DBI_GETRECSIZE),7)+; "│"+PADR(DBINFO(DBI_ALIAS),12)+; "│"+PADR(DBINFO(DBI_FULLPATH),45) AADD(aBase, cStr) ENDIF NEXT DO WHILE lExit K := Achoice( aKoordin[1]+3, aKoordin[2]+1, aKoordin[3]-1, aKoordin[4]-1, aBase ) IF K == 0 .OR. LASTKEY() == K_ESC lExit := .F. ELSE SELECT(K) TekBase() ENDIF ENDDO

Dima: Andrey А что рабочих областей может уже быть больше 255 или я чего путаю ?

Andrey: Dima пишет: А что рабочих областей может уже быть больше 255 или я чего путаю ? Думаю, что да. Надо проверять...

Dima: Andrey пишет: Думаю, что да. Надо проверять... Cделал тестик Clipper 5.2e упал при открытии 246 рабочей области с ошибкой DOS ERROR 4 ну это и понятно так как FILES у меня прописан 250 в CONFIG.NT Странно что упал раньше......... Harbour 3.2 упал при открытии 65000 рабочей области с ошибкой Unrecoverable error 6004: Internal error: size of dynamic symbol table exceed ЗЫ Harbour рулит

Andrey: Dima пишет: Harbour рулит



полная версия страницы