Как контролировать, какой экземпляр программы открывает файл?
Я запускаю два экземпляра UltraEdit на двух разных виртуальных рабочих столах (Windows 10). У меня проблема в том, что когда я открываю файл, он не открывает файл в том экземпляре, который открыт на текущем рабочем столе, а просто открывает его в первую очередь.
Я вижу, что интеграцию с проводником можно настроить, но мне нужен совет, как убедиться, что используется экземпляр на текущем рабочем столе.
1 ответ
Эта функция должна быть реализована самим UltraEdit, и в настоящее время он не поддерживает эту функцию.
Windows не может управлять тем, как это работает (по крайней мере, с API Win32 в том виде, в котором он существует сейчас).
Ниже представлена документация UltraEdit по теме .
Как видите, такой возможности нет.
Бесполезную информацию о том, почему это работает именно так, я вам сообщу после текста справки.
Specifying new / original instance
Use the following flags before the file path(s) to specify whether a new instance should be launched for opening the files, or to use the original instance (regardless of the "Allow multiple instances" setting in Settings » Application layout » Miscellaneous:
/foi forces UltraEdit / UEStudio to use the original (already running) instance
/fni forces UltraEdit / UEStudio to open the file(s) specified on the command line in a new instance
Бесполезная информация:
- Когда вы запускаете UltraEdit (или любое приложение, управляющее экземплярами), он проверяет наличие мьютекса , который можно использовать, чтобы узнать, запускалось ли оно уже.
- Если он не находит мьютекс, он создает его и запускается.
- Если он находит мьютекс, он проверяет командную строку, как определено выше, и решает, стоит ли запускать новый экземпляр или идентифицировать окно другого экземпляра и передавать ему командную строку.
- Большинство приложений Windows работают таким образом.
UltraEdit может легко поддерживать то, что вы хотите, но это потребует некоторой работы со стороны IDM. Я использую UltraEdit начиная с Windows 3.1, и они действительно реализовали некоторые из моих предложений, так что попробовать стоит! :)