Ошибка FCTL_GETPANELINFO при вызове из GetOpenPanelInfoW при открытии панели плагина из панели плагина
Far30b6153.x64.20230527 - ошибка
Far30b6151.x64.20230523 - работает нормально
Пример (плагин FarNet.PowerShellFar).
Эта команда создает и открывает пустую панель плагина:
Code: Select all
ps: [PowerShellFar.PowerExplorer]::new('f8e30845-abb4-4a51-9c08-e07c602f3610').OpenPanel()
Работает, если вызывать ее из обычной панели, отрывается пустая панель, закрыть
можно клавишей отмены.
Однако, если сначала открыть панель какого-нибудь плагина, например, временную
панель, то команда приводит к ошибке "Cannot get panel information.".
Что делает плагин и что происходит. По дизайну FarNet панелей, плагин при
открытии панели вызывает FCTL_GETPANELINFO для старой панели. Нужно знать
некоторые старые свойства панели. Это работало в Far30b6151.x64.20230523 и
перестало работать в Far30b6153.x64.20230527, то есть в описанном сценарии
FCTL_GETPANELINFO возвращает 0 (ошибка).