Необходимые преобразования для старых проектов

Если проект компилировался, но после обновления visscada-common он перестал компилироваться, значит проект старый и требует некоторых действий над собой.

Перед началом действий удалить все временные файлы проекта:
*.dcu;*.~*;*.dsk;*.ddp

1. RPVISUAL.*

Удалить файлы проекта rpvisual.* (либо сохранить в другой папке) и заменить на файлы rpvisual.* из папки common/ProjectTemplate.

Если в папке проекта PrjSrc имеются другие каталоги с необходимыми для компиляции файлами *.pas, добавить в проект в частном порядке:

  • открыть в Delphi: Project / Options / Directories-Conditionals / Search path
  • добавить пути до нужных каталогов:
    • PrjSrc/Something1
    • PrjSrc/Something2
    • и т.д

Далее выполнять компиляцию для поиска неисправности, затем действия из пп.3-4 до тех пор, пока проект не скомпилируется.

2. Заменить название модулей в uses

В pas-файлах в секции implementation исправить название модулей, перечисленных в uses:

  • Удалить
    _RpVisualMain
    Globals
  • Добавить вместо удаленных
    RpVisualGlobal,
    RpVisualLegacyPanels,
    RpVisualUtils,
    RpVisualMain;

Не допускать редекларирования модулей RpVisualGlobal и RpVisualMain.

Если при компиляции возникает ошибка «Undeclared identifier…» на какую-либо переменную, добавить в uses модуль RpVisualGlobal.

Придерживаться общего правила:

Стандартные delphi модули и модули сторонних компонентов размещать в uses в interface секции. Модули visscada\common и модули проекта по возможности размещать в uses в секции implementation.

3. Заменить текст

  • LogIn на rvgLogIn
  • dbckeck на dbutils

4. Выпиленные модули

Убрать весь код, связанный со следующими модулями:

Helper.pas
RcpMan.pas
RcpManFrame.pas
RcpManFrameSetValue.pas
Receipt.pas
rpLineControl.pas
Sounds.pas

5. Библиотека libeay32.dll

Если проект компилируется, но при запуске приложения выдается ошибка о не найденной библиотеке libeay32.dll, запустить скрипт:

common/_bpl/_INSTALL.BAT
doc/visscada/refact_rpvisual_units_20210901.txt · Последние изменения: 2022/02/01 06:04 — denis
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0