Поделиться через


Ведение журнала запросов на перезагрузку

Если действие InstallValidate обнаруживает установку используемого файла, отображается диалоговое окно FilesInUse и регистрируется следующая информация.

Info 1603. The file E:\testdb\Test\CustAct1.dll is being held in use
by the following process: Name: test, Id: 137, Window Title: 'Test'.

Если установщик обнаруживает, что он будет перезаписывать используемый файл, он записывает в журнал следующие сведения.

Info 1603. The file E:\testdb\Test\CustAct2.dll is being held in use.

Info 1903.Scheduling reboot operation: Deleting file [filename]. Must 
reboot to complete operation.

Маркер [имя_файла] может содержать путь к файлу с расширением RBF. В этом случае RBF-файл фактически является исходным файлом, зарегистрированным в сообщении 1603, которое было переименовано в RBF-файл. Используемый файл сначала переименовывается с расширением .rbf, а затем удаляется.

Чтобы получить дополнительные сведения о том, почему установщик пытается перезаписать этот файл, можно использовать параметр подробного ведения журнала. Используйте значение INSTALLLOGMODE_VERBOSE в вызове MsiEnableLog или используйте параметр подробных выходных данных параметров командной строки. При этом занося в журнал следующие сведения.

MSI (s) (D0:F0): File: E:\testdb\Test\CustAct2.dll;  Overwrite;  
REINSTALLMODE specifies all files to be overwritten

Журнал будет содержать такое сообщение, как "Существующий файл является более ранней версией" или "Существующий файл поврежден (недопустимая контрольная сумма)".