Передача команд в.NET GUI из внешнего редактора
Есть ли способ запустить экземпляр C# .NET-программы, а затем вызвать его снова, используя параметр командной строки, например, чтобы вставить текст в текстовое поле?
Вариант использования: 1) Двойной щелчок / запуск: MyProgram.exe (запустит графический интерфейс) 2) Из командной строки: MyProgram.exe -addText "Текст для добавления" (мой "любимый" редактор запустит эту команду, когда я нажму какую-нибудь клавиатуру сочетание)
Т.е. я хочу передать команды уже запущенному экземпляру моей (GUI) программы.
Я думал о WCF, но не вижу там никакого решения...
Конечно, я могу создать файл, который моя программа опрашивает каждые X мс, читает содержимое, выполняет команду и удаляет его, но нет ли более элегантного решения?
1 ответ
Да, это то же самое, что иметь единственный экземпляр приложения, отвечающего на запуск связанного типа файла.
См. Открытие "известного типа файла" для запуска экземпляра пользовательского приложения - .NET или поиск здесь WindowsFormsApplicationBase
это то, что управляет подключением инстансов для вас.