Clarion 11-12

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
porutchik
Активист
Сообщения: 150
Зарегистрирован: 01 Февраль 2009, 5:35

Clarion 11-12

Сообщение porutchik »

вроде в 6ке работало
Peek(0FFFF5h, LOC:B)
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2329
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 18 раз

Clarion 11-12

Сообщение Губин Игорь »

porutchik писал(а): 28 Декабрь 2021, 22:20 тупая привязка по дате генерации биос?
Для этого есть же средства Windows API?
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
porutchik
Активист
Сообщения: 150
Зарегистрирован: 01 Февраль 2009, 5:35

Clarion 11-12

Сообщение porutchik »

Губин Игорь писал(а): 28 Декабрь 2021, 23:33 Для этого есть же средства Windows API?
когда писал на кларе 3.1 под дос их не было. Потом по привычке в CW 1.5 2.0 и 4.0 пользовал этот же метод, потом резко перешел на АСП. Глянул в архивы, там был такой код

Код: Выделить всё

  OMIT('! ***', _WIDTH32_)
    Peek(Address(0F000h, 0FFF5h), LOC:B)
  ! *** END OMIT
  COMPILE('! ***', _WIDTH32_)
    Peek(0FFFF5h, LOC:B)
  ! *** END COMPILE
причем тоже с 2-мя параметрами
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2329
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 18 раз

Clarion 11-12

Сообщение Губин Игорь »

porutchik писал(а): 29 Декабрь 2021, 9:58 там был такой код
Это было очень давно и очень неправда... :lol:

Цель защита от копирования?
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Clarion 11-12

Сообщение finsoftrz »

Конвертнул вчера свой основной проект в с11 и собрал с рантаймом с6. Увидел, что скорость кодогенерации по сравнению с с6 не просто выросла, а выросла на порядок. Если в с6 после внесения изменений в словарь я запускал менеджер компиляции в специальном режиме генерации только глобалов, чтобы отменить перегенерацию всех процедур в apps (полную перегенерацию использую крайне редко, если что-то критичное изменяется в шаблонах), то в с11 процесс сборки солюшена с перегенерацией сырцов проходит в сопоставимое время с этим режимом, на мое ощущение, даже несколько быстрее. Это очень серьезный аргумент. Дело не только в сокращении времени сборки app, работа с языком шаблонов выходит на принципиально другой уровень, можно комфортно вносить изменения. Тем более, что редактор поддерживает подсветку синтаксиса, свертывание блоков и т.п. для языка шаблонов.

Еще пара лайхаков при работе со словарем.
Поиск в словаре такой же, как в app. Если таблиц 2-3 сотни, то это крайне неудобно. Чтобы обойти проблему, в параметрах словаря указываем вывод префиксов и ищем по ним. Префиксы обычно эквивалентны первым сиволам названия таблицы. Например, таблицу Tovar по названию замучаешься искать, а если в строке поиска ввести "(tov", то находим сразу.
Активное использование derived в больших словарях приводит к жутким тормозам среды. Поэтому я вычистил в c6 этот реквизит перед конвертацией. Чтобы в дальнейшем работать с derived в стиле с6 для ускорения ввода описаний полей, выбираем в derived нужный pool, все реквизиты поля присваиваются, затем очищаем derived. Дополнительное телодвижение, но это все равно намного быстрее, чем заполнять реквизиты для поля вручную.
При выборе значения в derived пулы и глобалы идут вперемежку с таблицами (в отличии от с6, где они располагаются вверху списка и помечаются специальной пиктограммкой). Чтобы устранить эту недоработку в среде, можно наименования разделов с пулами и глобалами начинать с символов "_", "__". В результате они встанут вверху списка, ни на что больше это не влияет.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
porutchik
Активист
Сообщения: 150
Зарегистрирован: 01 Февраль 2009, 5:35

Clarion 11-12

Сообщение porutchik »

finsoftrz писал(а): 29 Декабрь 2021, 11:04 свертывание блоков
а еще есть идентификатор
!region
finsoftrz писал(а): 29 Декабрь 2021, 11:04 выбираем в derived нужный pool, все реквизиты поля присваиваются, затем очищаем derived. Дополнительное телодвижение, но это все равно намного быстрее, чем заполнять реквизиты для поля вручную.
это я еще в 6-ке делал
Аватара пользователя
porutchik
Активист
Сообщения: 150
Зарегистрирован: 01 Февраль 2009, 5:35

Clarion 11-12

Сообщение porutchik »

Губин Игорь писал(а): 29 Декабрь 2021, 10:05 Цель защита от копирования?
в те времена было можно :D
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Clarion 11-12

Сообщение finsoftrz »

porutchik писал(а): 29 Декабрь 2021, 12:18
finsoftrz писал(а): 29 Декабрь 2021, 11:04 свертывание блоков
а еще есть идентификатор
!region
finsoftrz писал(а): 29 Декабрь 2021, 11:04 выбираем в derived нужный pool, все реквизиты поля присваиваются, затем очищаем derived. Дополнительное телодвижение, но это все равно намного быстрее, чем заполнять реквизиты для поля вручную.
это я еще в 6-ке делал
В с6 можно не очищать, там постоянной синхронизации нет и нечему тормозить. В с11 явный баг. У derived я штук 5 недоработок насчитал по мелочам.
C6/C11, ШВС, tps/btrieve.
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Clarion 11-12

Сообщение kreator »

finsoftrz писал(а): 13 Декабрь 2021, 10:33 Вывод такой, что ни с6, ни с11, ни xp them полноценно не реализуют новый гуй. В c6 "честно" подключили работу с манифестом, и те контролы, которые поддерживает ms, стали выглядеть по новому. В с11 и xp them попытка эмулировать то, что осталось. Не полноценная, со своими багами и фичами.
У себя я сделал в настройке программы возможность опционального подключения манифеста (генерится или убивается внешний файл манифеста). После переключения на классический гуй глаза прямо отдыхают, все работает быстро и ожидаемо. Может, дело в привычке.
В AnyScreen кнопочки при наведении подсвечиваются, сами контролы нет. Может от браузера зависит.
We are hard at work… for you. :)
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Clarion 11-12

Сообщение finsoftrz »

Там от браузера будет зависеть, это уже не кларион рисует. Охота Вам тратить время на anyscreen...
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Clarion 11-12

Сообщение finsoftrz »

Все бы ничего. 2-3 дня тестирую среду с11. Не виснет, не падает, не тормозит особо. Зеленое колесо при открытии эмбедов изредка появляется на 2-3 сек, но в основном открываются без задержек. Возможно, что причина использования процедурных шаблонов вместо объектных, которые существенно проще.
Но вот с дизайнером окон днище. Смотрю на него то слева, то справа, и не пойму никак, как с этим можно работать. Проблема в том, что он работает в других единицах измерения. То есть окно в приложении выглядит не совсем так, как в дизайнере. Если контролы в окне расположены плотно, то в дизайнере они наезжают друг на друга. Я уж не говорю о такой "мелочи", что нельзя окно раздвигать влево и вверх. Пробовал растащить контролы, но тогда в приложении они занимают больше места, что не соответствует замыслу. Менять же стратегию размещения контролов в окнах, чтобы обойти эту проблему, тоже не вариант, и сделано оптимально, и пользователи привыкли.

Пример окна в среде с6.
C6.jpg
Оно же в среде с11.
C11.jpg
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Clarion 11-12

Сообщение finsoftrz »

Впору реализовывать оконный дизайнер во внешнем приложении и копипастить window структуру между ним и средой с11.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7373
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Clarion 11-12

Сообщение Игорь Столяров »

А какой у Вас шрифт указан в окне ? Если ARIAL, попробуйте сменить на системный Win10.
И точно не Sans Serif из Win 3.11 для контролов.
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Clarion 11-12

Сообщение finsoftrz »

В окне приложения? Шрифт ms sans serif, это с с6 пришло. У меня win7. Попробую со шрифтами поиграться, но вряд ли дело в них. После сбоки в приложении все нормально отображается, искажение только в среде. Приложения, сделанные в .net используют другие единицы измерения, отличные от тех, которые используют приложения, сделанные в win32. Как я понимаю, проблема возникает из-за погрешности при пересчете.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7373
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Clarion 11-12

Сообщение Игорь Столяров »

Я сейчас далеко от цивилизации, но насколько помню нет никаких проблем с отображением.
Вернусь к компьютеру, проверю и сообщу точно. :D
Речь идёт о шрифте окна. В С63 SS родной шрифт, а в С11 лучше юзать Segoi UI.
За теми кто отстал - не возвращаться. (С) Кодекс
Ответить