Я считаю, что
- PackageInfoTable.UnitCount
подсчитывает единицы измерения, хранящиеся в массиве UnitInfo
, где каждая запись содержит указатели кода инициализации и завершения для частей модуля пакета.
- PackageInfoTable.TypeInfo.UnitCount
вдольс ... UnitNames
ссылается на Единицы, содержащие некоторые TypeInfo
, хранящиеся в TypeTable
(реальная Информация Типа или маркер границы единицы).
Подразделение может содержать некоторый код инициализации / финита, но нет TypeInfo для сбора и взаимности, следовательно, разница ...
К вашему сведению, посмотрите procedure ChangeFinalizationsOrder
в MemCheck.pas чтобы посмотреть, как они взламывают InitTable (до D2006) ...