On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение



Не зарегистрирован
Зарегистрирован: 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?

Спасибо: 0 
Ответов - 69 , стр: 1 2 3 4 All [только новые]


Администратор




Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 12.11.05 11:44. Заголовок: Re:


В харборе этой проблемы естественно нет, SCOPE это тот же жесткий фильтр

А алгоритма перехода на харбор нет, надо просто пересобрать свой проект и
посмотреть что получится. Если вылезут какие-то нереализованные функции,
подумать чем их можно заменить. Если используются какие-то сторонние
библиотеки без сырцов, вопрос сложнее

Цель создания харбора ведь была обеспечить как максимамльно возможную
совмемстимость с клиппером. Так для начала можно считать, что харбор - это
тот же клиппер, пересобрать свои проекты, ну и потихоньку знакомиться с
его новыми возможностями, кототрых в клиппере нет

Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 13.11.05 04:15. Заголовок: Re:


Да я не о том!
Мне бы полный список того, что нужно скачать и откуда, а также АЛГОРИТМ того, КАК это скаченное использовать. Пошагово. Для такого вот морального урода, который в Си не в зуб ногой и в принципе не понимает, как там что друг к другу цепляется, и понятия не имеет, что такое "проект" и тому подобное!
Я пока просто не понимаю, КАК сделать (то самое "пересобрать") программу на Harbour. В этом суть вопроса.

Спасибо: 0 



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 13.11.05 14:26. Заголовок: Re:


Для начала почитай Faq у Павла , а там сходишь по ссылкам и получишь еще массу вопросов .
http://xharbour.nm.ru/harbour_faq.txt

Спасибо: 0 
постоянный участник




Не зарегистрирован
Зарегистрирован: 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

Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 19.11.05 02:49. Заголовок: suv: Глупости...


Я могу прислать кусок программы вместе с обработчиком TBrowse и примером базы, где TBrowse со SCOPE творит именно то, что я написал... Как ещё доказать своё утверждение, не представляю.
По крайней мере для значения SCOPETOP и SCOPEBOTTOM SPACE(60)при текущем индексе на текстовое поле длиной 60 символов, если стоим на записи, у которой это поле не пустое, получаем зависание.

Спасибо: 0 



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 19.11.05 03:06. Заголовок: Re:


Сергей Р.

О том самом FAQе я и вёл речь в начальном сообщении от 12.11.2005: информации куча, а как сделать Harbour-программу, после его прочтения понятнее не становится ни на грош. Чёткой последовательности действий (алгоритма) нет...

Спасибо: 0 
Администратор




Не зарегистрирован
Зарегистрирован: 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, нигде ведь не говорится о необходимости
на нем программировать


Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 20.11.05 04:37. Заголовок: Re: Pasha


www.harbour-project.org страница загружается, в DOWNLOAD захожу, на загрузку бинарника для "Windows 32 bits 2.5Mb" щёлкаю и получаю "Невозможно отобразить страницу"

www.xhabour.org - сообщение "Невозможно отобразить страницу" сразу же

Разницы в результате не ощущаю :-(

Спасибо: 0 



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 20.11.05 05:15. Заголовок: Re:


Так, с xhaRbour разобрался - буква R в имени сайта куда-то пропала. Скачал, буду устанавливать и смотреть.

Спасибо: 0 



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 20.11.05 12:10. Заголовок: Re:


Лукашевскмй

Можно попробовать и Clip (www.itk.ru). Одно что но, работает под Виндой только ч.з. CigWin

Спасибо: 0 
Профиль





Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 21.11.05 01:22. Заголовок: Re:


Pasha пишет:
цитата
в Win9x в файле config.sys надо указать:
Shell=C:\COMMAND.COM C:\ /E:4096 /P


А что в Миллениуме указывать, где файл config.sys не используется?

Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 21.11.05 13:50. Заголовок: Re:


о настройке максимального числа открытых файлов посмотри тут

Спасибо: 0 
Профиль





Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 21.11.05 14:08. Заголовок: Re:


А причем здесь максимальное число открытых файлов?

Кстати, может в Миллениуме этот размер памяти для переменных окружения вообще не нужно прописывать?

Спасибо: 0 
Профиль
Администратор




Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 21.11.05 16:22. Заголовок: Re:


Как это делается в миллениуме я не знаю, больно редкая ОС, надо поискать
А нужно или нет увеличивать env size можно определить только опытным путем
Если сборка пройдет нормально, значит все в порядке

Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 21.11.05 20:37. Заголовок: Re:


Pasha:

Попробовал xharbour: при компиляции им любого моего модуля выдаётся Error F0002 Redifinition of procedure or function: <имя процедуры>

Что бы это значило?

Спасибо: 0 





Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 21.11.05 21:17. Заголовок: Re:


В проекте на Clipperе, использовались .obj файлы, полученные из ассемблерных путем компиляции в TASM.
В xHarbourе линкер ругается на 16-битный сегмент.
Что можно сделать?

Как и следовало ожидать, функции для мыши, которые я использовал, не нашел.
Посоветуйте, какие библиотеки взять для поддержки мыши и где посмотреть описание.

Вообще, документация какая-нибудь есть по xHarbourу?

Спасибо: 0 
Профиль
Администратор




Не зарегистрирован
Зарегистрирован: 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 с первым почином ! Ты уже почти собрал харбор-программу :)

Спасибо: 0 
Профиль
Администратор




Не зарегистрирован
Зарегистрирован: 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

Спасибо: 0 
Профиль





Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 22.11.05 12:13. Заголовок: Re:


Pasha пишет:
цитата
16-битный модуль к 32-битной программе прилинковать в принципе
невозможно.


Это понятно.

Pasha пишет:
цитата
если есть сырцы пересобрать как 32-х битные, функции передачи параметров и возврат результата немного другие


Тексты есть, но вот какие функции передачи параметров и возврат результата, где можно узнать? Как это все делается?

И еще, функции KEYSEC() KEYTIME() не поддерживаются?

Спасибо: 0 
Профиль
Администратор




Не зарегистрирован
Зарегистрирован: 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()


Спасибо: 0 
Профиль
Ответов - 69 , стр: 1 2 3 4 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 10
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет