Новая версия Расширенного релиза библиотеки MiniGUI (часть VI ) (продолжение)
gfilatov: Начало темы находится здесь, а теперь АНОНС * АНОНС * АНОНС * АНОНС * АНОНС Готовится к опубликованию новая сборка №48, которая выйдет в конце недели. Если у Вас есть интересные наработки для включения в новый релиз, то сейчас самое удобное время для их отправки мне Кратко, что нового: - исправление обнаруженных ошибок и неточностей кода; - новый класс HEADERIMAGE для Grid и Browse; - свойство Address в Hyperlink может теперь открывать папку или файл на диске; - добавлен NOTABSTOP класс для Browse; - поддержка пользовательских компонентов (заимствована из оффициального релиза); - расширения и исправления в библиотеках TsBrowse и PropGrid; - обновлены сборки Харбор и HMGS-IDE; - новые и обновленные старые примеры (как обычно ).
Dima: gfilatov2002 пишет: Что посоветуете - есть ли смысл в изменении компилятора Какие плюсы/минусы от смены ?
gfilatov2002: Dima пишет: Какие плюсы/минусы от смены ? Благодарю за отклик Плюсы: - нормальная поддержка новых фич, которые появились, начиная с Висты (это классы MARQUE, CUEBANNER и новые элементы управления CLBUTTON, SPLITBUTTON и др.) - скорость работы компилированного кода выше, чем у BCC 5.5 за счет использования новых возможностей LLVM компилятора - полная совместимость со старым кодом Минусы: - поддержка операционок, начиная с Висты (XP остается за бортом) - незначительное увеличение размера кода приложений (порядка 200 кБайт)
Andrey: gfilatov2002 пишет: Что посоветуете - есть ли смысл в изменении компилятора Нужен лучше - MS Visual C++ 2017 compiler (32-bit и 64-bit) Под него поддержка лучше, и доки больше ! Я под него собираюсь переходить. При использовании других библиотек (а я использую другие - HASP) библиотеки ТОЛЬКО под BCC и MSVC. ХР можно оставлять за бортом. Пускай юзера на 7-ку переходят. Я со следующего года всех ХР-ников "обрежу".
Dima: gfilatov2002 пишет: Минусы: - поддержка операционок, начиная с Висты (XP остается за бортом) А вот это плохо....(но не смертельно)
SergKis: gfilatov2002 пишет:Что посоветуете - есть ли смысл в изменении компилятора Vc 2017 ближе. Сами потихоньку подготавливаемся к переползанию.
Haz: gfilatov2002 пишет: XP остается за бортом) так вроде уже давно там. я и не помню уже когда видел в последний раз
ММК: Dima пишет: А вот это плохо....(но не смертельно) Здравствуй ,Дима :)) Действительно не смертельно. Разработчик винды прекращает поддержку ХР и т.д. ( или прекратил) , но ХР как работала , так и будет работать. Задачи собранные на ВСС работали на ХР и работают на 10 - ке. На наш "трудовой век" хватит... Андрей , как не писал на си, так и не будет писать... На самом деле вопрос в том будет ли работать минигуи ( и на чем ) :) Интерес есть для тех , кто пишет на конкретном компиляторе, поэтому лучше использовать несколько. К примеру ВСС делает файлики меньше, сам удобен для флэшки. Кто-то хочет работать только дома и с соответствующей оболочкой. Например Visual Studio. Скорость работы? В теории наверное- Да, на практике не существенно ( мне так кажется). Поэтому наверное удобнее собирать и выкладывать библиотеки на разных компиляторах. Вот так комплектуются библиотеки для FW который под Харбор FWH - FiveWin for Harbour * Borland BCC 7.0 version: fiveh.lib, fivehc.lib * Microsoft Visual C++ version: fivehm.lib, fivehcm.lib * Libraries FiveH32.lib and FiveHC32.lib are to be used with Microsoft Visual Studio Community 2015. FiveHCM.lib and FiveHMX.lib are to be used with xHarbour commercial * MinGW gcc: fivehg.lib, fivehgc.lib FWHX - FiveWin for xHarbour * Borland BCC 5.82 version: fivehx.lib, fivehc.lib * Microsoft Visual C++ version: fivehmx.lib, fivehcm.lib FWH64 - FiveWin 64 for Harbour/xHarbour 64 bits * Harbour and Microsoft C 64 version: fiveh64.lib, fivehc64.lib * Harbour and Borland 7.1 64 bits: five64.a, fivec64.a XHB - Fivewin for xHarbour commercial * xfw.lib
Dima: ММК Привет ! Я не к этому вел. Просто есть еще старое оборудование: кассы , некоторые модели весов и тд и тп которое пашет только на XP , выше не работают , поэтому и ось там менять ни кто не хочет.
gfilatov2002: ММК пишет: На самом деле вопрос в том будет ли работать минигуи Согласен ММК пишет: Скорость работы? В теории наверное- Да, на практике не существенно Снова согласен ММК пишет: удобнее собирать и выкладывать библиотеки на разных компиляторах Я, собственно, так и делаю (для разных Си-компиляторов собираю готовую рабочую среду - Си-компилятор+Харбор+Минигуи). Но, кроме 64-бит MinGW сборки, интереса к таким решениям не наблюдается P.S. Однако уже два голоса за Visual C
gfilatov2002: Dima пишет: которое пашет только на XP Да, есть такая проблема, поэтому BCC 5.5 до сих пор жив (18 лет ему стукнуло, как и Харбору)
SkyNET: gfilatov2002 пишет: Для последующих сборок выбираю бесплатный компилятор из - Embarcadero C++ 10.1 (32-bit) - MS Visual C++ 2017 compiler (32-bit и 64-bit) но все же склоняюсь к первому варианту А что мешает пойти по пути ядра Harbour и оставить выбор компилятора за программистом? С конфликтами компиляции под него пускай борются те, кто в нём разбираются. Кстати, а в Embarcadero C++ Compiler доступна ли Clang версия компилятора (BCC32C)? Если нет, то это крайне существенный недостаток. Я недавно игрался с Embarcadero C++ Builder Community Edition, так там по умолчанию (с BCC32 компилятором) даже поддержка C++ стандарта 2011 года хромает. Например, полностью отсутствует nullptr, что очень странно для 2018 года. ММК пишет: Задачи собранные на ВСС работали на ХР и работают на 10 - ке. На наш "трудовой век" хватит... У меня собранные приложения в Visual Studio 2017 прекрасно работают и на XP. Достаточно одной галочки в проекте: С компиляцией из консоли для XP правда скорее всего придётся немного помучаться.
gfilatov2002: SkyNET пишет: что мешает пойти по пути ядра Harbour и оставить выбор компилятора за программистом? С конфликтами компиляции под него пускай борются те, кто в нём разбираются. Мешает лень прикладных программистов, которые не хотят разбираться с этими проблемами, оставляя их решение "системщикам" SkyNET пишет: в Embarcadero C++ Compiler доступна ли Clang версия компилятора (BCC32C)? Да, Embarcadero’s free C++ compiler использует именно bcc32c.exe При этом Харбор определяет этот компилятор как LLVM/Clang C 3.3.1 (35832.6139226.5cda94d) (32-bit) x86 Благодарю за Ваше внимание
Andrey: SkyNET пишет: У меня собранные приложения в Visual Studio 2017 прекрасно работают и на XP. Тогда это отличная новость ! Т.е. ХР можно будет и дальше сопровождать. Я обеими руками за MSVC !
TimTim: Только недавно стал пробовать писать используя MiniGUI. Да, "старое болото" оно привычней и на наш век хватит. Но двигаться вперед тоже надо, оправдывать приставку Extended. Согласен с ММК: наверное удобнее собирать и выкладывать библиотеки на разных компиляторах. Работы непосредственно с компилятором С у меня нет. На С не пишу. Пока со сторонними библиотеками на С не сталкивался. Поэтому выбор компилятора не совсем моя тема. Тем более, что все тонкости работы с компиляторами взял на себя Григорий. Конечно, MSVC привлекателен тем, что действительно для него много доки, и Windows-ы написаны в той же компании, что и этот компилятор. Мое мнение очень субъективно. Я бы попробовал месяц поработать с библиотеками MiniGui собранными на одном компиляторе, а потом месяц на другом. Возможно, тогда выбор будет более осознанным.
gfilatov2002: TimTim пишет: Конечно, MSVC привлекателен Благодарю за отклик TimTim пишет: Я бы попробовал месяц поработать с библиотеками MiniGui собранными на одном компиляторе, а потом месяц на другом. Вы можете это сделать прямо сейчас. Попробуйте скачать сборку для бесплатного Embarcadero’s C++ компилятора версии 10.1 с сайта Минигуи, и пробуйте
Alw Spencer: gfilatov2002 Вопросик Если всё будет собираться скажем с Microsoft Visual C++ 19.10.25017 (32-bit) и с опцией для XP, то инсталлировать дополнительные Runtime C++ библиотеки на стороне клиента нужно или всё же EXE получается автономный (как в случае с BCC 5)?
gfilatov2002: Alw Spencer пишет: инсталлировать дополнительные Runtime C++ библиотеки на стороне клиента нужно Увы, НУЖНО устанавливать эти DLL-ки даже на Семерке
SergKis: gfilatov2002 пишет * Updated: Adaptation FiveWin Class TSBrowse 9.0 in HMG: ... - modified the method GotoRec( nRec [, nRowPos ] ) in the TSBrowse ... В методе GotoRec(...) надо убрать строку[pre2] If ::lIsDbf lRet := .T. cAlias := ::cAlias // ::SetFocus() ::nLastPos := (cAlias)->( RecNo() ) [/pre2] сломает фокус на др. контролах, при работе в событии CHANGE ... У себяубрал, т.к. сломались подводы на getbox-ах, с них фокус улетал на тсб
SergKis: PS Может тут слегка поправить ?[pre2] FUNCTION HMG_Alert( cMsg, aOptions, cTitle, nType ) ... LOCAL lFont := .F. ... IF ! _IsControlDefined( "DlgFont", "Main" ) lFont := .T. DEFINE FONT DlgFont FONTNAME "MS Shell Dlg" SIZE 9 ENDIF ... If lFont RELEASE FONT DlgFont EndIf RETURN iif( lEmpty, 0, _HMG_ModalDialogReturn ) ... [/pre2]