Получение времени последнего фокуса на процессе из ROT

Не уверен, что это возможно, поэтому просто хотел перепроверить здесь. Я получаю ROT, как это.

      [DllImport("ole32.dll")]
    public static extern int GetRunningObjectTable(int reserved,
                           out IRunningObjectTable prot);

Из этой информации я хочу получить, когда процесс был в последний раз в фокусе, если это возможно. затем я попыталсяSystem.Runtime.InteropServices.ComTypes.FILETIME ft; monikers[0].GetTimeOfLastChange(ctx, null, out ft);

это как раз тогда, когда файл был в последний раз изменен на диске. Затем я посмотрел на функцию GetProcessTimes, которая, похоже, не дает мне того, что я хочу.

Причина, по которой я хочу этого, заключается в том, что у меня есть программное обеспечение, в котором я хочу открыть последнее использованное приложение Visual Studio или любое другое приложение, возможно, я что-то упускаю здесь, ROT не кажется мне отсортированным, поэтому мне нужен способ сортировки одинаковых приложений, если это возможно.

Любые предложения о том, что я мог бы использовать, будут очень полезны.

Спасибо.

0 ответов

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