On-line: гостей 1. Всего: 1 [подробнее..]
АвторСообщение
постоянный участник




Пост N: 6492
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 26.10.19 20:00. Заголовок: Переход с BCC 5.5 на BCC 5.8 и BCC 7.30


Что то непонятки пошли в новом компиляторе.
Собираю часть проекта и линкую основную библиотеку.
Выдаёт теперь ошибку сборки, а как исправить не знаю:
Turbo Incremental Link 5.69 Copyright (c) 1997-2005 Borland
Error: Unresolved external 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::__nullref' referenced from D:\TEMP\TEST\TBRW_TABLE2.LIB|overlay
Error: Unresolved external 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::__getRep(unsigned int, unsigned int)' referenced from D:\TEMP\TEST\TBRW_TABLE2.LIB|overlay
Error: Unresolved external '__rwstd::__rw_stdexcept_BadAllocException' referenced from D:\TEMP\TEST\TBRW_TABLE2.LIB|overlay
Error: Unresolved external '__rwstd::__rw_stdexcept_NoNamedException' referenced from D:\TEMP\TEST\TBRW_TABLE2.LIB|overlay
Error: Unresolved external '__rwstd::rwse_OutOfRange' referenced from D:\TEMP\TEST\TBRW_TABLE2.LIB|overlay
Error: Unresolved external '__rwstd::except_msg_string::except_msg_string(const char *, ...)' referenced from D:\TEMP\TEST\TBRW_TABLE2.LIB|overlay
Error: Unresolved external 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<char, std::char_traits<char>, std::allocator<char> >(const char *, const std::allocator<char>&)' referenced from D:\TEMP\TEST\TBRW_TABLE2.LIB|overlay
hbmk2[form_Zaivka]: Error: Running linker. 2


Файл overlay.cpp в библиотеке Tbrw_Table2.lib прекрасно работал под BCC 5.51
А в 5.8 что-то конфликтует...
Как быть ?

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


постоянный участник




Пост N: 7615
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 23.11.23 17:29. Заголовок: SergKis пишет: но э..


SergKis пишет:

 цитата:
но это надо пробовать.


Попробовал... Хрень получается.
Месяца и недели правильно выходят, но окно тогда остаётся в той кодировке, какое первое окно открыли.
Т.е. смена кодировки окна не происходит.

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




Пост N: 4454
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.11.23 17:37. Заголовок: Andrey пишет Месяца ..


Andrey пишет
 цитата:
Месяца и недели правильно выходят, но окно тогда остаётся в той кодировке, какое первое окно открыли.
Т.е. смена кодировки окна не происходит.


Надо для каждого языка свое окно, т.к. на нем и в контролах надо исп. свой языковый фонт при создании, т.е. для RU1251 свое окно, для UA1251 свое

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




Пост N: 7616
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 23.11.23 17:43. Заголовок: SergKis пишет: Надо..


SergKis пишет:

 цитата:
Надо для каждого языка свое окно, т.к. на нем и в контролах надо исп. свой языковый фонт при создании, т.е. для RU1251 свое окно, для UA1251 свое


Так я это и делаю.
Только если оба окна поднять и переключаться между ними, то язык не переключается !!!
Выслал пример к тебе.

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




Пост N: 7618
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 23.11.23 22:38. Заголовок: SergKis пишет: Для ..


SergKis пишет:

 цитата:
Для hb данных при переключении на яз. окно ставить свой hb_CdpSelect(...) ..., но это надо пробовать.


Это понятно что нужно ставить.
Непонятно другое !!!
Сделал проверку в TsbViewer.prg:
FUNCTION myLangRecover(cAlias,cSetCP,cSelCdp,cLngSel) 
LOCAL aMonth, nI
aMonth := Array(12)
FOR nI := 1 TO 12
aMonth[nI] := " " + LOWER( NTOCMONTH( nI ) ) + " "
NEXT
? ProcNL(), cAlias,cSetCP,cSelCdp,cLngSel, hb_valtoexp(aMonth) // строка 447

DO EVENTS
hb_SetCodepage(cSetCP)
hb_CdpSelect(cSelCdp)
hb_LangSelect(cLngSel)
IF LEN(cAlias) > 0
IF ( Select( cAlias ) > 0 )
dbSelectArea( cAlias )
ENDIF
ENDIF

? ProcNL(), hb_SetCodepage(), hb_CdpSelect(), hb_LangSelect() // строка 459
aMonth := Array(12)
FOR nI := 1 TO 12
aMonth[nI] := " " + LOWER( NTOCMONTH( nI ) ) + " "
NEXT
?? hb_valtoexp(aMonth)
DO EVENTS
RETURN NIL

При первом входе в эту функцию месяца правильные, потом фигню выдают.

Почему ?
Что ещё надо для правильного переключения языка ?
Почему ломается вывод месяцов на одном и том же языке - RU1251 ?
Такой же результат будет и в отдельном примере !

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




Пост N: 4455
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.11.23 23:57. Заголовок: Andrey Смотри внимат..


Andrey
Смотри внимательно
1 строка hb_LangSelect() => ru.RU1251
2 строка hb_LangSelect() => ru.RU1251.RU1251
смотри ф-ю hb_LangSelect() https://github.com/Petewg/harbour-core/wiki/hb_L и задавай параметры правильно, т.е.
hb_LangSelect("ru")
или
hb_LangSelect( , "RU1251")

 цитата:
Почему ломается вывод месяцов на одном и том же языке - RU1251 ?


Потому и ломается

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




Пост N: 7619
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 24.11.23 16:24. Заголовок: SergKis пишет: и за..


SergKis пишет:

 цитата:
и задавай параметры правильно


Сделал, всё равно НЕ РАБОТАЕТ !!!
Отдельный пример к тебе положил.

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




Пост N: 4456
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.11.23 20:28. Заголовок: Andrey пишет Сделал,..


Andrey пишет
 цитата:
Сделал, всё равно НЕ РАБОТАЕТ !!!
в примере НЕ РАБОТАЕТ повтор вызова языка


Разовая уст. языка (по списку) работает. Пример Скрытый текст


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




Пост N: 7620
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 24.11.23 20:48. Заголовок: SergKis пишет: Разо..


SergKis пишет:

 цитата:
Разовая уст. языка (по списку) работает.


Да !
А потом при нажатии на форме доп.кнопок, меню и т.д. - НЕ РАБОТАЕТ !
Окно же не последнее, много чего потом делать нужно будет.

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




Пост N: 4457
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.11.23 20:57. Заголовок: Andrey Посмотри мой..


Andrey
Посмотри мой пример, сначала ставится
 
INIT PROCEDURE Sets_EVN()
LOCAL cFont := "DejaVu Sans Mono", nSize := 14
LOCAL cLog := "_msg.log"

SET CODEPAGE TO RUSSIAN
SET LANGUAGE TO RUSSIAN

...
потом повторно ставится
FUNCTION mySetLang(nVal)
LOCAL cSetCP, cSelCdp, cLngSel
LOCAL o, cTmp, oIniLang, cIniLang

IF nVal == 0
SET CODEPAGE TO ENGLISH
SET LANGUAGE TO ENGLISH
ELSEIF nVal == 1
SET CODEPAGE TO RUSSIAN
SET LANGUAGE TO RUSSIAN

ELSEIF nVal == 2
...

получаемый _ru1251.ini секции и данные в них правильные.

 цитата:
А потом при нажатии на форме доп.кнопок, меню и т.д. - НЕ РАБОТАЕТ !


Думаю, оконный интерфейс по языку в однобайтовой сборке hmg должен действовать на всю программу, т.е. "новый" язык новый запуск exe с установкой этого языка.

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




Пост N: 7622
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 24.11.23 21:06. Заголовок: SergKis пишет: Дума..


SergKis пишет:

 цитата:
Думаю, оконный интерфейс по языку в однобайтовой сборке hmg должен действовать на всю программу, т.е. "новый" язык новый запуск exe с установкой этого языка.


Конечно согласен с этим, но мне всегда хочется чуток расширить границы... и универсальности ...
Допустим в моей большой программе нужно использовать печать на украинском языке в отдельном окне.
Можно указать явно языки, тогда в окне месяца правильно показываются, НО если использовать НЕ MODAL окно для этого,
то возможна потеря языка в основной программе.

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




Пост N: 4458
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.11.23 21:21. Заголовок: Andrey пишет Можно у..


Andrey пишет
 цитата:
Можно указать явно языки, тогда в окне месяца правильно показываются, НО если использовать НЕ MODAL окно для этого, то возможна потеря языка в основной программе.


Используй для этих нескольких окон запуск своего же exe с параметром nMode > 0, Будет аналог STANDARD и ставишь нужный язык и голова не болит

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

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