Автор | Сообщение |
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 12.11.05 03:57. Заголовок: Clipper 5.2-5.3 проблем, а в Harbour?
Надоело биться с Clipperами 5.2(SIX)-5.3 Выяснилось, например, что значения SCOPE не воспринимаются как ограничители для первой/последней записи списка в TBrowse при нажатии комбинаций Ctrl_PgUp и Ctrl_PgDown соответственно... Так что получаем переход на первую или последнюю запись неSCOPанутого списка и как следствие (если запись не соответствует SCOPу) - зависание... Хотелось бы попробовать Harbour, но как на него перейти, чёткого алгоритма пока не встречал. То есть где-то полгодика тому увидел и скачал FAQи на эту тему, но там нет алгоритма действий, всё вразброс, да и рассчитано на человека, который знает-понимает, что такое Си, а если с ним и с его библиотеками не сталкивался в принципе никогда? Кто-нибудь может порадовать алгоритмом перехода на Harbour?
|
|
|
Ответов - 69
, стр:
1
2
3
4
All
[только новые]
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 12.11.05 11:44. Заголовок: Re:
В харборе этой проблемы естественно нет, SCOPE это тот же жесткий фильтр А алгоритма перехода на харбор нет, надо просто пересобрать свой проект и посмотреть что получится. Если вылезут какие-то нереализованные функции, подумать чем их можно заменить. Если используются какие-то сторонние библиотеки без сырцов, вопрос сложнее Цель создания харбора ведь была обеспечить как максимамльно возможную совмемстимость с клиппером. Так для начала можно считать, что харбор - это тот же клиппер, пересобрать свои проекты, ну и потихоньку знакомиться с его новыми возможностями, кототрых в клиппере нет
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 13.11.05 04:15. Заголовок: Re:
Да я не о том! Мне бы полный список того, что нужно скачать и откуда, а также АЛГОРИТМ того, КАК это скаченное использовать. Пошагово. Для такого вот морального урода, который в Си не в зуб ногой и в принципе не понимает, как там что друг к другу цепляется, и понятия не имеет, что такое "проект" и тому подобное! Я пока просто не понимаю, КАК сделать (то самое "пересобрать") программу на Harbour. В этом суть вопроса.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 13.11.05 14:26. Заголовок: Re:
|
|
|
|
| постоянный участник
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 15.11.05 19:50. Заголовок: Re:
Лукашевскмй пишет: цитата Надоело биться с Clipperами 5.2(SIX)-5.3 Выяснилось, например, что значения SCOPE не воспринимаются как ограничители для первой/последней записи списка в TBrowse при нажатии комбинаций Ctrl_PgUp и Ctrl_PgDown соответственно...
Глупости. Воспринимаются. Это жесткий фильтр, что для tbrowse, что для while !eof() ; skip ; end
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 19.11.05 02:49. Заголовок: suv: Глупости...
Я могу прислать кусок программы вместе с обработчиком TBrowse и примером базы, где TBrowse со SCOPE творит именно то, что я написал... Как ещё доказать своё утверждение, не представляю. По крайней мере для значения SCOPETOP и SCOPEBOTTOM SPACE(60)при текущем индексе на текстовое поле длиной 60 символов, если стоим на записи, у которой это поле не пустое, получаем зависание.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 19.11.05 03:06. Заголовок: Re:
Сергей Р. О том самом FAQе я и вёл речь в начальном сообщении от 12.11.2005: информации куча, а как сделать Harbour-программу, после его прочтения понятнее не становится ни на грош. Чёткой последовательности действий (алгоритма) нет...
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 19.11.05 11:35. Заголовок: Re:
A. Где взять харбор ? Q. На сайтах: www.harbour-project.org и www.xhabour.org В разделе downloads надо скачать бинарники под win32, собранные C-компилятором Borland C++ 5.1.1, а также бинарники раздела contribution. Харбор разбит на 2 части: собственно харбор и сторонние библиотеки (contribution). Скачал ? A. Что еще надо, чтобы собрать харбор-программу под Windows ? Q. Прежде всего надо скачать компилятор Borland C++ 5.5.1 по адресу: ftp://ftpd.borland.com/download/bcppbuilder/freecommandLinetools.exe Скачал ? Установил ? A. Как собрать харбор-программу ? Q. Сборка харбор-программы состоит из 3-х этапов: компиляция компилятором harbour.exe в C-код, затем компиляция C-компилятором получившихся C-модулей в obj-формат, и наконец линковка обьектных модулей линкером и получение результирующего приложения. Для работы Borland C++ необходимо: указать каталог c:\bcc55\bin в переменной окружения PATH (в файле autoexec.bat); в каталоге c:\bcc55\bin создать еще 2 файла: bcc32.cfg: -I"c:\Bcc55\include" -L"c:\Bcc55\lib" и ilink32.cfg: -L"c:\Bcc55\lib" Должно быть достаточно места для переменных окружения, для этого в Win9x в файле config.sys надо указать: Shell=C:\COMMAND.COM C:\ /E:4096 /P или еще больше, а для winnt убрать лишние переменные окружения. Затем непосредственно для сборки программы надо использовать пакетный файл bld_b32.bat из каталога harbour\bin, конечно модифицировав его для своих целей. Проделал ? Зря ты испугался упоминания C, нигде ведь не говорится о необходимости на нем программировать
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 20.11.05 04:37. Заголовок: Re: Pasha
www.harbour-project.org страница загружается, в DOWNLOAD захожу, на загрузку бинарника для "Windows 32 bits 2.5Mb" щёлкаю и получаю "Невозможно отобразить страницу" www.xhabour.org - сообщение "Невозможно отобразить страницу" сразу же Разницы в результате не ощущаю :-(
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 20.11.05 05:15. Заголовок: Re:
Так, с xhaRbour разобрался - буква R в имени сайта куда-то пропала. Скачал, буду устанавливать и смотреть.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 20.11.05 12:10. Заголовок: Re:
Лукашевскмй Можно попробовать и Clip (www.itk.ru). Одно что но, работает под Виндой только ч.з. CigWin
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 21.11.05 01:22. Заголовок: Re:
Pasha пишет: цитата в Win9x в файле config.sys надо указать: Shell=C:\COMMAND.COM C:\ /E:4096 /P
А что в Миллениуме указывать, где файл config.sys не используется?
|
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 21.11.05 13:50. Заголовок: Re:
о настройке максимального числа открытых файлов посмотри тут
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 21.11.05 14:08. Заголовок: Re:
А причем здесь максимальное число открытых файлов? Кстати, может в Миллениуме этот размер памяти для переменных окружения вообще не нужно прописывать?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 21.11.05 16:22. Заголовок: Re:
Как это делается в миллениуме я не знаю, больно редкая ОС, надо поискать А нужно или нет увеличивать env size можно определить только опытным путем Если сборка пройдет нормально, значит все в порядке
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 21.11.05 20:37. Заголовок: Re:
Pasha: Попробовал xharbour: при компиляции им любого моего модуля выдаётся Error F0002 Redifinition of procedure or function: <имя процедуры> Что бы это значило?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 21.11.05 21:17. Заголовок: Re:
В проекте на Clipperе, использовались .obj файлы, полученные из ассемблерных путем компиляции в TASM. В xHarbourе линкер ругается на 16-битный сегмент. Что можно сделать? Как и следовало ожидать, функции для мыши, которые я использовал, не нашел. Посоветуйте, какие библиотеки взять для поддержки мыши и где посмотреть описание. Вообще, документация какая-нибудь есть по xHarbourу?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 22.11.05 09:40. Заголовок: Re:
Лукашевскмй пишет: цитата Попробовал xharbour: при компиляции им любого моего модуля выдаётся Error F0002 Redifinition of procedure or function: <имя процедуры> Что бы это значило?
Проблема пока детская, будут и серьезнее Ты вероятно используешь в prg код без начальной процедуры или функции Убери в bld.bat в строке 116 параметр -n или в своих prg оформи главный модуль: proc main ... return Пока все как в клиппере btw с первым почином ! Ты уже почти собрал харбор-программу :)
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 22.11.05 09:54. Заголовок: Re:
rvu 16-битный модуль к 32-битной программе прилинковать в принципе невозможно. Пойми, ито все-таки ДРУГОЙ компилятор Подули надо переписать или есть есть сырцы пересобрать как 32-х битные, функции передачи параметров и возврат результата немного другие Мышку в харборе использовать очень просто: При вызове Inkey() 2-й параметр - это маска, ее надо указывать 255: Inkey(0, 255) и затем анализировать клавиши: #define K_MOUSEMOVE 1001 #define K_LBUTTONDOWN 1002 #define K_LBUTTONUP 1003 #define K_RBUTTONDOWN 1004 #define K_RBUTTONUP 1005 #define K_LDBLCLK 1006 #define K_RDBLCLK 1007 #define K_MBUTTONDOWN 1008 // Middle Button Down #define K_MBUTTONUP 1009 // Middle Button Up #define K_MDBLCLK 1010 // Middle Button Double Click #define K_MMLEFTDOWN 1011 // Mouse Move Left Down #define K_MMRIGHTDOWN 1012 // Mouse Move Right Down #define K_MMMIDDLEDOWN 1013 // Mouse Move Middle Down #define K_MWFORWARD 1014 // Mouse Wheel Forward #define K_MWBACKWARD 1015 // Mouse Wheel Backward #define K_NCMOUSEMOVE 1016 // Non-Client Area Mouse Movement Позицию курсора мышки дают функции MROW(), MCOL() С докой сложнее. В каталоге doc что-то конечно есть Еще на www.xharbour.com Ron выкладывал какой-то hlp-файл, поищи Насчет мышки добавлю в faq
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 22.11.05 12:13. Заголовок: Re:
Pasha пишет: цитата 16-битный модуль к 32-битной программе прилинковать в принципе невозможно.
Это понятно. Pasha пишет: цитата если есть сырцы пересобрать как 32-х битные, функции передачи параметров и возврат результата немного другие
Тексты есть, но вот какие функции передачи параметров и возврат результата, где можно узнать? Как это все делается? И еще, функции KEYSEC() KEYTIME() не поддерживаются?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 22.11.05 15:26. Заголовок: Re:
Посмотри include\hbapi.h там есть прототипы всех этих функций прием параметров: extern HB_EXPORT char * hb_parc( int iParam, ... ); /* retrieve a string parameter */ extern HB_EXPORT char * hb_parcx( int iParam, ... ); /* retrieve a string parameter */ ... и возврат результата: #define hb_ret() hb_itemClear( hb_stackReturnItem() ) #define hb_reta( ulLen ) hb_arrayNew( hb_stackReturnItem(), (ulLen) ) #define hb_retc( szText ) hb_itemPutC( hb_stackReturnItem(), (szText) ) #define hb_retclen( szText, ulLen ) hb_itemPutCL( hb_stackReturnItem(), (szText), (ulLen) ) и т.д. Они очень похожи на клипперовские, только другой префикс Лучше всего конечно делать такие процедуры на С, я еще не встречал, чтобы писали на asm, расве что мелкие вставки KeySec() и KeyTime() действительно нет, харбор ведь многоплатформенный, такая специфика как скэнкоды относится только к DOS, в других ОС и такого понятия нет. Попробуй сделать как-то через __Keyboard()
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 22.11.05 20:20. Заголовок: Re:
Вот KeySec и KeyTime, конечно без поддержки скэнкодов, используй пока так, я их залью на CVS и в следующем релизе они будут keyb1.prg: Static nHandle := 0 Static nSeconds, nsKey, nsTime, nsCounter, lsMode Function KeySec(nKey, nTime, nCounter, lMode) Local lActivated := .f. if nHandle != 0 HB_IdleDel(nHandle) nHandle := 0 endif if nKey != nil if nTime < 0 nTime := -nTime/18.2 endif if nCounter == nil nCounter := 1 endif if lMode == nil lMode := .f. endif nsKey := nKey nsTime := nTime nsCounter := nCounter lsMode := lMode nSeconds := Seconds() nHandle := HB_IdleAdd({|| doKeySec()}) lActivated := .t. endif Return lActivated Static function doKeySec() Local nSec := Seconds() if lsMode .and. ! Empty(NextKey()) nSeconds := nSec elseif nsCounter != 0 .and. nSec - nSeconds >= nsTime __Keyboard(nsKey) if nsCounter > 0 nsCounter -- endif if nsCounter == 0 HB_IdleDel(nHandle) nHandle := 0 else nSeconds := nSec endif endif Return nil
|
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 22.11.05 20:23. Заголовок: Re:
и keyb2.prg: Static nHandle := 0, cTime, nsKey Static nHour, nMin, nSec, nLast Function KeyTime(nKey, cClockTime) Local lActivated := .f. if nHandle != 0 HB_IdleDel(nHandle) nHandle := 0 endif if nKey != nil .and. ValType(cClockTime) = 'C' nsKey := nKey cTime := cClockTime nHour := Val(Substr(cClockTime, 1, 2)) nMin := Val(Substr(cClockTime, 4, 2)) nSec := Val(Substr(cClockTime, 7, 2)) nLast := -1 nHandle := HB_IdleAdd({|| doKeyTime()}) lActivated := .t. endif Return lActivated Static function doKeyTime() Local ccTime := Time() Local nHr := Val(Substr(ccTime, 1, 2)) Local nMn := Val(Substr(ccTime, 4, 2)) Local nSc := Val(Substr(ccTime, 7, 2)) if nHour = 99 if nHr > nLast __Keyboard(nsKey) nLast := nHr if nHr == 23 HB_IdleDel(nHandle) nHandle := 0 endif endif elseif nMin = 99 .and. nHr == nHour if nMn > nLast __Keyboard(nsKey) nLast := nMn if nMn == 59 HB_IdleDel(nHandle) nHandle := 0 endif endif elseif nSec = 99 .and. nHr == nHour .and. nMn == nMin if nSc > nLast __Keyboard(nsKey) nLast := nSc if nSc == 59 HB_IdleDel(nHandle) nHandle := 0 endif endif elseif ccTime > cTime __Keyboard(nsKey) HB_IdleDel(nHandle) nHandle := 0 endif Return nil
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 23.11.05 13:52. Заголовок: Re:
Pasha, спасибо большое! А в полноэкранном режиме всегда такие тормоза? (Пока тестирую под Миллениум, под другие Винды еще не пробовал). Как-то с этом бороться можно?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 23.11.05 22:36. Заголовок: Re:
Тормоза в фуллскрин есть только под Win98, WinMe и наверное в Win95 В оконном режиме в этих ОС тормозов нет В winnt/2k/xp/2003 тормозов нет ни в фуллскрин ни в оконном режиме Тормоза связаны с медленной работой в win9x консольных винапишных функций работы с курсором (т.е. тормоза возникают только при изменении позиции курсора или SetCursor(1)/SetCursor(0)) Такая же проблема стояла и в других консольных win32 программах, пример far и dos navigator (win32-версия). В этих программах проблема решена путем вызова этих функций в отдельном потоке (thread). В харборе эта проблема к сожалению не решена. Я пытался создавать поток для вызова SetConsoleCursorPosition и тому подобное, но результата не было - видать не хватает опыта использования winapi Работу в фуллскрин можно заметно ускорить путем использования при выводе на экран функций DispBegin() - DispEnd(). Например перед первым @ say get поставить DispBegin(), а перед READ - DispEnd(). В этом случае вывод на экран буферируется и весь экран обновляется один раз после DispEnd. И пореже включать/выключать курсор. При выключенном курсоре вывод на экран выполняется быстро и тормозов нет ! Кстати сам текстовый терминал харбора gtwin предельно оптимизирован и где только можно использует буферизацию. У меня например благодаря такой буферизации фуллскирин работает довольно приемлемо и тормоза почти не чувствуются. Да и win9x сейчас выходит из употребления, а в winxp проблемы нет вообще Ну а радикальный способ решить вопрос - использовать другой терминал: gtwvt. Это не текстовый режим, а его эмуляция через графику, почти как оконный режим, но при этом дополнительно есть много других возможностей
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 23.11.05 23:00. Заголовок: Re:
Pasha я так понял что контакта с автором FAR ни кто не нашел.......... Интерестно через что он работает, WINAPI или как то иначе......
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 24.11.05 10:44. Заголовок: Re:
Да у Рошаля спрашивать уже и ничего не надо, что делать вобщем-то понятно, только вот как :( техника хромает DOS Navigator ведь тоже OpenSource проект, я смотрел его паскалевские сырцы, и делал также в харборовском gtwin на C. Тормоза оставались Может там еще что-то инициализировать надо, не знаю
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.11.05 00:13. Заголовок: Re:
Pasha пишет: цитата Тормоза в фуллскрин есть только под Win98, WinMe и наверное в Win95 В оконном режиме в этих ОС тормозов нет
В оконном режиме, действительно все нормально. Странно вот что - тестировал программу на трех компьютерах, полноэкранный режим - - Win XP - Celeron-1000 - все идеально - Win 98 - P-166 (первый пентиум) - вполне неплохо - Win Me - Celeron-1000 - очень сильно тормозит, на порядок больше, чем на P-166.
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.11.05 11:21. Заголовок: Re:
Что тут сказать... Значит в Me эта функция winapi работает еще хуже Или дело в видеодрайвере Я тоже замечал что харбор-терминал на Cel1100 работает шустрее чем на Cel2000 И там и там win98
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.11.05 12:49. Заголовок: Re:
Pasha пишет: цитата Проблема пока детская, будут и серьезнее Ты вероятно используешь в prg код без начальной процедуры или функции Убери в bld.bat в строке 116 параметр -n или в своих prg оформи главный модуль: proc main ... return
Не понял, какой такой bld.bat??? Ошибка возникает, когда я выполняю компиляцию: xharbour.exe fun.prg ,например. И такая лабуда на каждый абсолютно prg... Также не понял, что, в каждом prg должна быть процедура MAIN? Но тогда уж точно Redefinition получится!
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.11.05 17:52. Заголовок: Re:
Лукашевскмй Покажи пример небольшого исходника который ты не можешь компильнуть. Процедура MAIN должна быть в основном модуле. А вообще юзай например HBMAKE в интерактивном режиме для создания и редактирования сценария. BLD.BAT батничек который лежит в harbour\bin и служит для сборки. Пример запуска можно увидеть , запустив его без параметров.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 26.11.05 07:42. Заголовок: Re:
Dima пишет: цитата BLD.BAT батничек который лежит в harbour\bin и служит для сборки. Пример запуска можно увидеть , запустив его без параметров.
У меня в xharbour\bin только 3 файла: harbour.exe, hbdoc.exe и hamake.exe и всё! Никакого bld.bat там нет. Ну и ладно, до линковки мне ещё семь вёрст и всё лесом... А компилить я пытаюсь АБСОЛЮТНО те же самые PRG от 5.2, ни единого знака в них не менял!
|
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 26.11.05 08:11. Заголовок: Re:
Dima Понял по компиляции: в xharbour (по крайней мере 0.99.50, который я скачал), нельзя чтобы PRG-модуль назывался так же, как любая из процедур или функций внутри него... Но у меня половина модулей по названиям функций, кот. внутри, называется. А модулей штук 90, если я их переименую, то запутаюсь нафиг без всякого harbour... Что делать? А вот чего не понял, это почему результирующий PRG.C в Нортоне по F4 отображается в одну строку, а по F3 нормально... То есть понятно, что дело в концах строк, а как бы это изменить? Или это в Cи так принято?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 26.11.05 12:27. Заголовок: Re:
Дошло до меня кажется Похоже при сборке релиза для bcc в xharbour\bin забыли положить *.bat По крайней мере год назад это делали. Это так ? Я и не знаю, релиз не скачиваю Лукашевский, давай свой адрес, срочно вышлем ! И надо собирать программу харбором с теми же параметрами, что ты ее собираешь в клиппере. А для этого исправить строку не помню уже номер в bld.bat Юниксовые компиляторы С понимают разделитель строк Chr(10), а виндозные - и Chr(10) и Chr(13)+Chr(10). Для общности компилятор харбора генерирует выходной С-файл с разделитетем Chr(10) Используй вместо нортона фар, он тоже понимает оба разделителя строк Менять компилятор харбора из-за особенности редактора древнего нортона никто не станет
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 27.11.05 02:39. Заголовок: Re:
Pasha пишет: цитата Похоже при сборке релиза для bcc в xharbour\bin забыли положить *.bat По крайней мере год назад это делали. Это так ? Я и не знаю, релиз не скачиваю Лукашевский, давай свой адрес, срочно вышлем !
Именно так, Bat-ников в BIN нет. Мой адрес не дом и не улица, а kniga@online.ru Хотелось бы узнать, с чем ещё я ОБЯЗАТЕЛЬНО столкнусь. Вызов каких-то дополнительных функций нужно в процедуру MAIN всобачить, вроде бы?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 27.11.05 12:46. Заголовок: Re:
Отправил В майн надо поставить русскую кодовую страницу - это есть в фак И не забудь скачать gtwin с xharbour.nm.ru Хорошо бы еще скачать сырцы харбора - это необязательно, но ты сможешь по ним увидеть реализацию всех функций
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.11.05 01:26. Заголовок: Re:
Спасибо за BAT, но у меня тоже Millennium и сообщение о нехватке памяти для переменных среды при выполненни батника... Но Сишный файл вроде создаётся... Насчёт gtwin.lib - есть ли существенная разхница между файлом от 21.06.05 в архиве с xharbour.nm.ru и файлом от 06.06.05 из папки LIB из архива XHarbour? По размеру они одинаковы... И кстати, чего с ним делать-то нужно?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.11.05 09:10. Заголовок: Re:
Лукашевский Снеси этот каличный Линолиум ;)))
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.11.05 10:15. Заголовок: Re:
С миллениум я не помогу, у меня его нет, поищи на гугле или спроси на каком-нибудь форуме по виндузам gtwin.lib с xharbour.nm.ru надо переписать в каталог lib пофиксен ввод русской буквы "р"
|
|
|
|
| постоянный участник
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.11.05 12:35. Заголовок: Re:
Pasha пишет >Тормоза в фуллскрин есть только под Win98, WinMe и наверное в Win95 >В оконном режиме в этих ОС тормозов нет При работе в сети в режиме файл- сервер , таблица расположена на сервере, и в оконном режиме , тормозит.Но скорость вычислений нормальная.Поэтому сетевые программы не могу на Харбор перевести
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.11.05 15:08. Заголовок: Re:
Медленнее чем в клиппере ? На каких операцих ? На чтении или записи в таблицу ? Странно, у меня как раз быстрее чем в клиппере получается Есть один момент. Есть тормоза при обновлении файлов, то надо: в модуле source\rtl\filesys.c в функции fsCommit между строк: HB_TRACE(HB_TR_DEBUG, ("hb_fsCommit(%p)", hFileHandle)); и HB_STACK_UNLOCK вставить: #if defined(HB_OS_WIN_32) hb_fsSetIOError( TRUE, 0 ); return; #endif и пересобрать этот модуль Может поможет
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.11.05 15:11. Заголовок: Re:
С компиляцией harbour разобрался, а вот компиляция bcc55 выдаёт кучу ошибок типа: Error: Unresolved external '_HB_FUN_DBSELECTAREA' referenced from F:\XHARBOUR\A_D_SER.OBJ Это нормально? И как потом получившиеся OBJ собирать?
|
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.11.05 16:16. Заголовок: Re:
Ситуация: в разных PRG-модулях есть несколько одинаково называющихся Static функций, причём один такой модуль вызывается из другого. xHarbour при компиляции цепляет этот модуль (он и все прочие вызываемые модули цепляет - зачем, интересно?) и выдаёт ошибку: Error F0002 Redefinition of procedure or function <имя этой функции>...
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.11.05 17:59. Заголовок: Re:
Давай сделаем так Вышли мне свою характерную маленькую программу их 2-х 3-х модулей, на примере которых было бы видно твои проблемы Я подготовлю батники для сборки программы и отправлю тебе Только надо быстро - меня со среды не будет, уеду в соседнюю дружественную страну дней на 10
|
|
|
|
| постоянный участник
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 29.11.05 09:36. Заголовок: Re:
Pasha спрашивает: >Медленнее чем в клиппере ? На каких операцих ? На чтении или записи в >таблицу ? >Странно, у меня как раз быстрее чем в клиппере получается Речь идет не о вычислениях, они нормально выполняются( быстрее, чем в Клиппер 5.3 и примерно так же , как в Клиппер 5.1 +Six ), а о выводе на экран, о просмотре в Browse.Вот здесь в сети заметный тормоз. На локальной машине вполне приемлимо.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 29.11.05 13:08. Заголовок: Re:
В клипперовской программе использовались меню, сделанные MENU TO и ACHOICE(). Интересно, к ним как-нибудь можно мышку прикрутить? И где можно почитать про класс Win32Prn?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 29.11.05 18:34. Заголовок: Re:
win32prn лучше всего посмотреть пример: tests\testw32p.prg или сырцы самого класса если добавлять поддержку мышки, то наверное сразу и в READ, и в ACHOICE, и т.д. Везде надо в Inkey добавить 2-й параметр - маску и сделать поддержку нажатий "клавиш" мышки Кстати, в клиппер 5.3 есть ли поддержка мышки ?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 29.11.05 18:46. Заголовок: Re:
Пардон, с мышкой оказывается все сделано :-) Надо просто в начале программы поставить: SET EVENTMASK TO INKEY_ALL
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 30.11.05 10:28. Заголовок: Re:
Обнаружилась несовместимость клиппера и харбора m1.prg: func main do m2 with 1 do m2 with 2 return nil m2.prg: Static c1 proc m2(nn) ? 'Hello' return делаем bld32.bat m1 т.е. harbour с параметром -n и без параметра -m клиппер собирает, а харбор дает ошибку. Похоже харбор не рассматривает m2 как отдельный модуль Я команду DO и не использую, а Андрей напоролся на эту несовместимость Надо написать Рону
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 10.12.05 08:41. Заголовок: Re:
Мне в конце концов удалось скомпилить все модули, т.е. по крайне мере получить все файлы .c и все файлы .obj Однако Ilink32 выдаёт при сборке Fatal: Access violation. Link terminated без всяких уточнений, что именно и в каком именно OBJ ему не понравилось. Blinker так по крайней мере честно говорил, что именно ему не нравится... Что делать дальше?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 17.12.05 23:52. Заголовок: Re:
Сейчас обнаружилось, что не вбивается маленькая русская "р". Вместо нее "h". gtwin.lib у меня не используется (даже если и подключаю исправленный вариант, ничего не меняется). Что делать?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 18.12.05 00:26. Заголовок: Re:
rvu А что используется gtwvt ? Проверил номально набирается маленькая русская "р"
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 18.12.05 01:11. Заголовок: Re:
Dima пишет: цитата А что используется gtwvt ?
Тоже нет. Из всех библиотек используются только harbour.lib dllmain.lib libnf.lib Кстати, может это и неправильно. В том xHarbourе, который я скачал, .bat файлов для сборки не было, поэтому определял все методом научного тыка. С этими библиотеками удалось откомпилировать клипперовскую программу без ошибок, но буквы "р" нету.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 18.12.05 16:13. Заголовок: Re:
rvu Скачал бы с CSV весь комплект Xharbour и вопросов было бы меньше.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 18.12.05 17:07. Заголовок: Re:
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 18.12.05 17:08. Заголовок: Re:
Dima Да, я уже посмотрел, там это CVS называется.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 19.12.05 20:31. Заголовок: Re:
Dima пишет: цитата Проверил номально набирается маленькая русская "р"
Я тоже сегодня под Win XP проверил - все нормально. Проблема была под Win Me.
|
|
|
|
| постоянный участник
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 18.04.06 18:33. Заголовок: Re:
Лукашевскмй пишет: цитата: | Я могу прислать кусок программы вместе с обработчиком TBrowse и примером базы, где TBrowse со SCOPE творит именно то, что я написал... Как ещё доказать своё утверждение, не представляю. По крайней мере для значения SCOPETOP и SCOPEBOTTOM SPACE(60)при текущем индексе на текстовое поле длиной 60 символов, если стоим на записи, у которой это поле не пустое, получаем зависание. |
| как давно я не был на форуме... Повторяю - все это глупости. Если актуально - присылай кусок кода.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 20.04.06 05:24. Заголовок: :suv2
Зависания были в 5.3, когда я "окончательно и бесповоротно" выбрал 5.2e, зависаний не стало, при нажатии Ctrl_PgDown обработчик TBrowse просто возвращает пользовательской функции значение 0 - "база пустая"... и повторная выборка SCOPE по пустому полю не воспринимается вообще. Хотя тут не кусок кода, тут пару модулей нужно присылать - обработчик TBrowse и "пользовательскую функцию"... На какой адрес? На sadko не твой был?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 21.04.06 12:43. Заголовок: Re:
rvu пишет: цитата: | А причем здесь максимальное число открытых файлов? Кстати, может в Миллениуме этот размер памяти для переменных окружения вообще не нужно прописывать? |
| весьма возможно, что и не надо увеличивать. по моему опыту для xharbour нужен только path на bcc32, остальное можно прописать с абсолютными путями в bat файлах или в make сценариях (там вообще не нужны никакие переменные окружения).
|
|
|
|
| постоянный участник
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.04.06 10:53. Заголовок: Re:
Лукашевский пишет: цитата: | Зависания были в 5.3, когда я "окончательно и бесповоротно" выбрал 5.2e, зависаний не стало |
| Неудивительно. Ведь сикс с 5.3 просто НЕ РАБОТАЕТ. Нет такого сикса. А set scope в сиксе (с 5.2) работает как жесткий фильтр и ничего в browse переделывать не надо
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 26.04.06 01:51. Заголовок: Re:
suv2 пишет: цитата: | Ведь сикс с 5.3 просто НЕ РАБОТАЕТ |
| А я и не говорил о SIX с 5.3! Я говорил о том что SET SCOPE на пустое поле в нём вешал программу, хотя это может просто из-за глючных в 5.3 CDXов... А в 5.2 этот жёсткий фильтр на пустое поле, как я уже говорил, на Ctrl PgDown возвращает 0 ("нет данных"), хотя данных таких пока не была нажата Ctrl PgDown виднелось море...
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 26.04.06 13:06. Заголовок: странно. проверил
.. и всё работает. нажимал много раз Ctrl PgDown. и жесткий фильтр всегда возвращает 2. Уверен, что у Вас ошибка - в строке 17.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 27.04.06 02:19. Заголовок: Re:
SergeJa пишет: цитата: | Уверен, что у Вас ошибка - в строке 17. |
| Извиняюсь, в строке 17 чего именно? И какая именно ошибка? А Вы точно пробовали это со SCOPE на пустое значение поля? Т.е. если есть текстовое поле, которое может быть пустым либо чем-либо заполненным, и ставим SCOPE именно на пустое значение?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 27.04.06 12:17. Заголовок: строка 17
уверен, что функции sx_SetScope(<n>,<c>) все равно, заполнено ли поле символами CHR(32) или символами CHR(33).
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 27.04.06 13:03. Заголовок: Re:
А если Chr(0) ?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.04.06 06:39. Заголовок: Re:
saulius пишет: Или если "" - у меня ведь SCOPE по пустому значению - RTRIM(поле)
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.04.06 12:38. Заголовок: SCOPE по "" - абсолютная бессмыслица
"из ничего и будет ничего" (У.Шекспир, Король Лир, действие 1-е сцена 2-я).
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 02.05.06 07:21. Заголовок: Re:
SergeJa пишет: Однако пока не нажмёшь Ctrl PgDown - SCOPE исправно выдаёт все позиции с пустым значением поля!
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 02.05.06 10:02. Заголовок: Re:
SET SCOPE .... dbGoTop() // <<<=== заработает SCOPE
|
|
|
Ответов - 69
, стр:
1
2
3
4
All
[только новые]
|
|