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





Пост N: 86
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 11.08.13 18:47. Заголовок: Перехожу с Clipper 5.2e на Harbour, список вопросов от "новичка"


Добрый день, уважаемые коллеги.

Большое спасибо за море справочной информации по переходу, но нужно ещё пнуть меня в нужном направлении.

Итак, установил Harbour 3.0 + BCC 5.5.1 ==>> 3.2.0 +minGW скомпилировал и запустил традиционный "Hello, world!"
Дело перешло к проекту, из-за которого собственно и речь. Компилируется что через hbmk2, что самим харбором - без ошибок, всего с парой предупреждений, что меня немало удивило.
Возникли ошибки на этапе линковки:

Скрытый текст

Help, please - что делать и куды бечь ?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 285 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]







Пост N: 96
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 11.08.13 22:58. Заголовок: Andrey пишет: Это C..


Andrey пишет:

 цитата:
Это CT.LIB
Я отказался от неё.



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

 цитата:
Тяжелый случай. Тяжело и громоздко. Не надо его юзать. CDX самое то или IDX (CDX) под ADS или LetoDB (CDX)



Переделывать NTX на CDX или еще дальше - SQL подобные БД вообще думаю пока нет смысла, когда программа "еле дышит"... Запустить, попробовать, добиться хотя-бы такого-же функционала, как и с 5,2е, обкатать, а потом уж оптимзировать.

Такие вот мысли пока...


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3361
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 11.08.13 23:01. Заголовок: Sergy пишет: Запуст..


Sergy пишет:

 цитата:
Запустить, попробовать, добиться хотя-бы такого-же функционала, как и с 5,2е, обкатать, а потом уж оптимзировать.


Все правильно. Так и я думал и все получилось и у тебя все будет нормально с переводом. Просто остынь и осмысли
А вопросы сюда ;) Поможем !

ЗЫ
Я тоже не верил что смогу перевести довольно большую прогу с Clipper 5.2 на Harbor , но.......5 дней упорной работы
и добился такого же функционала
5 метров исходников , 300 файлов , пришлось попотеть конечно.
Руки не опускай и все будет норм !
По ходу косяков будет много по началу но со временем все меньше и меньше. Просто поверь.

Спасибо: 1 
ПрофильЦитата Ответить





Пост N: 97
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 11.08.13 23:01. Заголовок: Dima пишет: Выведи ..


Dima пишет:

 цитата:
Выведи это дело в ? cDir+cAlias+cExt и глянь что кажет , возможно твой косяк



Мой.

удалил клипперовские *.NTX, а - *.XNT - остались... Удалил, перестроились ок.

Сорри.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 98
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 11.08.13 23:20. Заголовок: Dima пишет: Все пра..


Dima пишет:

 цитата:
Все правильно. Так и я думал и все получилось и у тебя все будет нормально с переводом. Просто остынь и осмысли
А вопросы сюда ;) Поможем !


А вот за это - отдельное БОЛЬШОЕ Спасибо!


 цитата:
ЗЫ
Я тоже не верил что смогу перевести довольно большую прогу с Clipper 5.2 на Harbor , но.......5 дней упорной работы
и добился такого же функционала
5 метров исходников , 300 файлов , пришлось попотеть конечно.
Руки не опускай и все будет норм !
По ходу косяков будет много по началу но со временем все меньше и меньше. Просто поверь.


У меня чуть скромнее: 34 файла, 2,5 мега исходников. Всегда старался не пользоваться никакими сторонними библиотеками, кроме стандартных Nanforun Toolkit и Clipper Tools - подозревал, что этот день когда-нить настанет...
В первом приближении - Работает!!! И ТАК БЫСТРО, что ппц.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 100
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 12.08.13 12:19. Заголовок: Итак, огромное спаси..


Итак, огромное спасибо всем помощникам! Программа запустилась и очень шустро (по сравнению с ntvdm) работает.
Возникающие то тут, то там вопросы - решаемы, связаны с вольностями Clipper - все, что дальше десятого символа считается неважным.

На повестке дня пока два насущных вопроса, связанных с отказом от нескольких системных функций:

1) В программе есть возможность записи клавиатурных нажатий. Типа макросов. И последующего их воспроизведения одним нажатием для автоматизации рутинных операций. Раньше это было организовано при помощи INKEYTRAP/TRAPANYKEY/KEYSEND. Одна из этих функций актвивизировалась и складывала в фоновом режиме все нажатия юзера в массив/строку. После чего в любой момент из массива/строки при помощи KEYSEND эти коды кнопок передавались в буфер клавиатуры. Просто и удобно. Как можно релизовать похожий механизм в Harbour ?

2) Нужен аналог функции BIOSDATE(), она используется сами понимаете для чего. Отказываться полностью не хочется, а использовать что-либо взамен - придется бегать по всем машинам с флэшкой, переделывать ключевые файлы.



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3362
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.08.13 12:32. Заголовок: Sergy пишет: Нужен ..


Sergy пишет:

 цитата:
Нужен аналог функции BIOSDATE()



 
Func Biosdate()
#include "hbwin.ch"

return GetRegistry( WIN_HKEY_LOCAL_MACHINE,"HARDWARE\DESCRIPTION\System" ,"SystemBiosDate" )



Спасибо: 1 
ПрофильЦитата Ответить





Пост N: 101
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 12.08.13 12:38. Заголовок: Dima пишет: Func B..


Dima пишет:

 цитата:
Func Biosdate()
#include "hbwin.ch"

return GetRegistry( WIN_HKEY_LOCAL_MACHINE,"HARDWARE\DESCRIPTION\System" ,"SystemBiosDate" )



Спасибо, использую

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3363
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.08.13 12:44. Заголовок: Sergy Можно еще к M..


Sergy
Можно еще к MAC адресу сетевой прицепиться.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 102
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 12.08.13 13:04. Заголовок: Dima пишет: Можно е..


Dima пишет:

 цитата:
Можно еще к MAC адресу сетевой прицепиться.


Безусловно, только сейчас первая задача - сохранить и перенести функционал. И только потом развиваться дальше.

Вот с клавиатурными нажатиями - с какой стороны подступить ?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3364
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.08.13 13:27. Заголовок: Sergy пишет: Вот с ..


Sergy пишет:

 цитата:
Вот с клавиатурными нажатиями - с какой стороны подступить ?


Можно попробовать FT_OnTick({|| test()},1) в функции Test и пробуй записывать
Или ваять самому https://groups.google.com/forum/#!topic/comp.lang.xharbour/e77vVVb1Kuc

Спасибо: 1 
ПрофильЦитата Ответить





Пост N: 106
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 12.08.13 15:18. Заголовок: Dima пишет: Можно п..


Dima пишет:

 цитата:
Можно попробовать FT_OnTick({|| test()},1) в функции Test и пробуй записывать
Или ваять самому https://groups.google.com/forum/#!topic/comp.lang.xharbour/e77vVVb1Kuc



Буду пробовать...

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 109
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 12.08.13 17:52. Заголовок: Dima пишет: Func B..


Dima пишет:

 цитата:
Func Biosdate()
#include "hbwin.ch"

return GetRegistry( WIN_HKEY_LOCAL_MACHINE,"HARDWARE\DESCRIPTION\System" ,"SystemBiosDate" )



Error: Unresolved external '_HB_FUN_GETREGISTRY' referenced from... хотя в проект hbwin.hbc подключил...



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3369
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.08.13 18:13. Заголовок: Sergy пишет: Error:..


Sergy пишет:

 цитата:
Error: Unresolved external '_HB_FUN_GETREGISTRY' referenced from.


попробуй win_regGet()
У меня Harbour 3.2 у тебя 3.0 вот и отличия

ЗЫ
Можно еще сырец глянуть win_reg.prg из Hbwin

Спасибо: 1 
ПрофильЦитата Ответить





Пост N: 110
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 12.08.13 21:54. Заголовок: Dima пишет: попробу..


Dima пишет:

 цитата:
попробуй win_regGet()
У меня Harbour 3.2 у тебя 3.0 вот и отличия



Получилось.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 111
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 12.08.13 23:58. Заголовок: Заметил, что ACHOICE..


Заметил, что ACHOICE себя как-то странно ведет. Суть:

REPEAT
pos := ACHOICE(2,10,2,40,show_array,,,pos)
UNTIL (LastKey() == K_ENTER)

Да, весь массив в Clipper прокручивается в одной строке - так выбираю логин входящего юзера, чтобы не вводить с клавиатуры. Компактно и поиск по первой букве работает.
Плюс стрелками можно выбрать:
Savin -> Serebrov -> Silaev...

В Harbour при нажатии "стрелка вверх" неожиданно появляется второй элемент массива на третьей строке, т.е. там, где ACHOICE делать вообще нечего...

Залез в tests\ac_test.prg

Скрытый текст


Запустил, офигел:



У всех так ?

Второй файл, ac_test2 тоже работает через Ж...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2924
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 13.08.13 00:15. Заголовок: Sergy пишет: Замети..


Sergy пишет:

 цитата:
Заметил, что ACHOICE себя как-то странно ведет.


Да, он от клипера отличается.
Смотри доку и переделывай обработку функций ACHOICE, MEMOEDIT, TBROWSE.

Мне тоже пришлось это переделывать. Разницу сейчас не скажу, но делал маленькие тестовые примеры, а потом код перетаскивал в свои системы.


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 112
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 13.08.13 15:26. Заголовок: Andrey пишет: Смотр..


Andrey пишет:

 цитата:
Смотри доку



Какую именно доку ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2925
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 13.08.13 18:12. Заголовок: Sergy пишет: Какую ..


Sergy пишет:

 цитата:
Какую именно доку ?



http://clipper.borda.ru/?1-6-0-00000007-000-0-0-1365407210

http://clipper.borda.ru/?1-6-0-00000004-000-0-0-1355750592

и т.д.


Спасибо: 1 
ПрофильЦитата Ответить





Пост N: 113
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 13.08.13 22:30. Заголовок: Andrey пишет: http:..


Andrey пишет:

 цитата:
http://clipper.borda.ru/?1-6-0-00000007-000-0-0-1365407210

http://clipper.borda.ru/?1-6-0-00000004-000-0-0-1355750592

и т.д.



Вот смотрю конкретно ACHOICE: http://www.elektrosoft.it/tutorials/Harbour-Reference-Guide/harbour-reference-guide.htm#AChoice

Не могу понять - какие в нем отличия от Клипперовского ?
Ведь заявлена полная совместимость, а по сути получается, что просто криво реализована? Может у меня сборка такая, раз даже тестовый пример не работает...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 900
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 14.08.13 08:31. Заголовок: Да, с AChoice косяк ..


Да, с AChoice косяк есть...

Хех... В тех исходниках, что у меня (а они довольно старые, от 30.01.2013), в achoice.prg увидел следующее:
/* TOFIX: 
---
#include "inkey.ch"
CLS
hb_keyPut( { K_DOWN, K_UP } ) // bogus '2' appears out of the area here.
AChoice( 0, 0, 0, 0, { "1", "2" } )
---
*/


Так что баг уже давно замечен. Осталось, чтобы кто-то его вылечил... )))
У кого есть свежие исходники? Там не исправлено еще?

update:
Сечас посмотрел на git. Не исправлено... (((
Ну что ж, либо забить, либо искать косяк в achoice.prg и исправлять.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 285 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 33
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет