MMC AsyncStatus (внутри MmcListView) не отображает статус

При использовании MMC (Microsoft Management Console) 3.0 я не могу получить сообщение AsyncStatus, отображаемое в окне консоли.

Я предполагаю, что он должен отображаться в строке состояния MMC.

При использовании StandardVerb (например, OnRefresh или же OnExpand) по крайней мере, он работает с сообщением по умолчанию (например, Expand: In progress...)

Тем не менее, когда я пытаюсь использовать status.ReportProgress([...]) или же status.Complete([...]) это не работает.

Пример:

class MyMMCListview : MmcListView {
    [...]
    protected override void OnAction(Microsoft.ManagementConsole.Action action, AsyncStatus status)
    {
        status.ReportProgress(1, 2, "Loading 1");
        System.Threading.Thread.Sleep(3000);
        status.ReportProgress(2, 2, "Loading 2");
        System.Threading.Thread.Sleep(3000);
        // default behavior
        base.OnAction(action, status)

        // Nothing done successfully
        status.Complete("Done", true);
    }
    [...]
}

MmcListView: https://msdn.microsoft.com/en-us/library/microsoft.managementconsole.mmclistview_members(v=vs.90).aspx

AsyncStatus: https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.managementconsole.asyncstatus(v=vs.85).aspx

Какие-либо предложения?

1 ответ

Я проверял это несколько раз, и кажется, что ReportProgress а также Complete показывают сообщение в строке состояния только тогда, когда они вызваны из переопределения в ScopeNode,

Другие вопросы по тегам