Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
dima-z04
0 / 0 / 1
Регистрация: 16.01.2013
Сообщений: 48
#1

Можно ли закрыть формы на параллельно работающих приложениях?

07.09.2015, 17:49. Просмотров 304. Ответов 10
Метки нет (Все метки)

Например запускаем одно и тоже приложение на разных машинах. На всех машинах выскакивает например formа messageBox. Возможно ли например при закрытии этой формы на одной машине, закрывать все такие же формы на другой машине? Не знаю как это правильно называется. Был бы признателен примерчику или совету, если конечно такое возможно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.09.2015, 17:49
Ответы с готовыми решениями:

Можно ли параллельно воспроизводить 2 музыки с разных устройств?
Здравствуйте! Можно ли воспроизвести 2 разные музыки: одну через наушники, а...

Можно ли выполнять параллельно запись с нескольких потоков в ConcurrentQueue?
Всем добрый день. Подскажите пожалуйста, можно ли выполнять параллельно запись...

2 параллельно-работающих формы (abcObjects)
вообщем надо что бы работало две формы одна abcObjects другая моя. вот код для...

Создание 2-х параллельно работающих окон
Не судите строго.Недавно начал изучать visual c++.Сделал программу, но никак не...

Вывод 3х окон анимации, работающих параллельно
Имеется физико-математическая модель распространения газа в коробе. Все...

10
Casper-SC
Эксперт .NET
3616 / 1825 / 355
Регистрация: 27.03.2010
Сообщений: 5,134
Записей в блоге: 1
07.09.2015, 21:00 #2
Можно. А у тебя уже есть какое-то приложение и ты хочешь это прикрутить или с нуля будешь делать?

Добавлено через 1 минуту
Я так понимаю приложение должно быть клиент-серверным и оба приложения должны быть подключены к серверу, чтобы синхронизировать их.
0
Woldemar89
TheGreatCornholio
1164 / 652 / 271
Регистрация: 30.07.2015
Сообщений: 2,259
Завершенные тесты: 1
07.09.2015, 21:07 #3
Цитата Сообщение от dima-z04 Посмотреть сообщение
Возможно ли например при закрытии этой формы на одной машине, закрывать все такие же формы на другой машине?
Возможно, практически все, вопрос - как? Через 5ю точку - или нормально.
Приведите схему взаимодействия, возможно, используются параллельные вычисления?
0
Casper-SC
Эксперт .NET
3616 / 1825 / 355
Регистрация: 27.03.2010
Сообщений: 5,134
Записей в блоге: 1
07.09.2015, 21:11 #4
Как вижу это я. На сервере происходит событие. Сервер шлёт клиентам какой-то сигнал (условно называю так). Клиент получив сигнал отображает сообщение. Когда ты нажимаешь "Закрыть окно" ты шлёшь серверу команду "Закрыть окно" и реально закрываешь это окно. Сервер получив команду (или подтверждение), что окно надо закрыть (закрыто), шлёт эту команду клиентам. Другие клиенты получив команду это окно закрывают, а твой клиент просто проверяет, если окно открыто, то закрыть, если нет, то ничего не делать (ведь окно ты уже руками сам закрыл).

Добавлено через 2 минуты
Хотя вопрос спорный стоит ли окно реально закрывать после нажатия руками, а не получения колбека от сервера. Короче, думаю, от задачи зависит.
0
Woldemar89
07.09.2015, 21:29
  #5

Не по теме:


Цитата Сообщение от Casper-SC Посмотреть сообщение
Как вижу это я...........
Тот неловкий момент, который порядком поднадоел, когда, отвечающий старается больше, чем ТС :)

0
dima-z04
0 / 0 / 1
Регистрация: 16.01.2013
Сообщений: 48
08.09.2015, 08:57  [ТС] #6
Цитата Сообщение от Woldemar89 Посмотреть сообщение
Цитата Сообщение от Casper-SC Посмотреть сообщение
Как вижу это я...........
Тот неловкий момент, который порядком поднадоел, когда, отвечающий старается больше, чем ТС
Прошу прощения. Просто я не бываю вечером в сети.

Цитата Сообщение от Casper-SC Посмотреть сообщение
Можно. А у тебя уже есть какое-то приложение и ты хочешь это прикрутить или с нуля будешь делать?
Добавлено через 1 минуту
Я так понимаю приложение должно быть клиент-серверным и оба приложения должны быть подключены к серверу, чтобы синхронизировать их.
Проблема в том что приложение уже есть. И оно не клиент серверное ((( И к нему это надо прикрутить. Сервер есть линуксовый, но он выполняет больше роль удаленной базы и работы с данными, которые приложение потом отображает. Впринципе как я понимаю можно к нему прикрутить API.

Схема взаимодействия следующая. Клиенты просто подключаются к серверу и работают с данными на этом сервере.
Ни какой клиент-серверной архитектуры нет ((
0
Woldemar89
TheGreatCornholio
1164 / 652 / 271
Регистрация: 30.07.2015
Сообщений: 2,259
Завершенные тесты: 1
08.09.2015, 09:18 #7
Цитата Сообщение от dima-z04 Посмотреть сообщение
Просто я не бываю вечером в сети.
Дело не в этом, а в написании вопроса - ничего конкретного не описано и участники форума
тратят время на применение телепатических способностей, чтобы понять, что же в итоге нужно.

Цитата Сообщение от dima-z04 Посмотреть сообщение
Клиенты просто подключаются к серверу и работают с данными на этом сервере.
Ни какой клиент-серверной архитектуры нет ((
Так есть или нет? Я правильно понял, что приложение C# подключается к серверу БД на Linux?

Цитата Сообщение от dima-z04 Посмотреть сообщение
приложение на разных машинах. На всех машинах выскакивает например formа messageBox.
В итоге вопрос должен выглядеть так, если я правильно понимаю -
Имеется сервер БД на Linux. Имеется приложение C# WinForms (не мое) (или мое), работающее с этим сервером.
Приложение установлено на нескольких компьютерах.

В определенный момент во всех приложениях на всех машинах появляется MessageBox.

Возможно ли, закрыв в одном приложении MessageBox, вызвать его закрытие в других приложениях на других машинах?
0
dima-z04
0 / 0 / 1
Регистрация: 16.01.2013
Сообщений: 48
08.09.2015, 09:30  [ТС] #8
Цитата Сообщение от Woldemar89 Посмотреть сообщение
Имеется сервер БД на Linux. Имеется приложение C# WinForms (не мое) (или мое), работающее с этим сервером.
Приложение установлено на нескольких компьютерах.
В определенный момент во всех приложениях на всех машинах появляется MessageBox.
Возможно ли, закрыв в одном приложении MessageBox, вызвать его закрытие в других приложениях на других машинах?

Да, абсолютно верно. Вопрос можно поставить так. В следующий раз буду более тщательно формулировать вопрос.
0
Woldemar89
TheGreatCornholio
1164 / 652 / 271
Регистрация: 30.07.2015
Сообщений: 2,259
Завершенные тесты: 1
08.09.2015, 09:51 #9
Так твое приложение или нет?
Цитата Сообщение от dima-z04 Посмотреть сообщение
Проблема в том что приложение уже есть.
Вроде как не твое.

Но, так или иначе, реализовать это реально. Вот только сделать это без костылей врядли возможно.

Можно C# WMI .NET попробовать для выполнения команд на удаленных компах.
http://itband.ru/2009/11/remote-execution/
0
dima-z04
0 / 0 / 1
Регистрация: 16.01.2013
Сообщений: 48
08.09.2015, 12:23  [ТС] #10
Вот нарыл еще такую тему Message Queue

Будет ли правильно для данной задачи использовать Message Queue ? Или все же лучше курить C# WMI .NET или soket
0
Woldemar89
TheGreatCornholio
1164 / 652 / 271
Регистрация: 30.07.2015
Сообщений: 2,259
Завершенные тесты: 1
08.09.2015, 12:46 #11
Можно вроде как получить хендл процесса по имени на удаленном компе и мониторить его дочерние окна,
(если это возможно), на наличие MessageBox.
https://msdn.microsoft.com/ru-ru/library/z3w4xdc9(v=VS.110).aspx
C#
1
2
3
4
5
            // Get all instances of Notepad running on the specific computer, using machine name.
            Process[] remoteByName = Process.GetProcessesByName("notepad", "myComputer");
 
            // Get all instances of Notepad running on the specific computer, using IP address.
            Process[] ipByName = Process.GetProcessesByName("notepad", "169.0.0.0");
Process.MainWindowHandle - используй в WinApi функции FindWindowEx.

Поэкспериментируй, вдруг прокатит.
1
08.09.2015, 12:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.09.2015, 12:46

Одновременное освобождение устройств, работающих параллельно
Доброго времени суток:) Собственно, вопрос такой. Можно ли в GPSS отловить...

Как сделать запрет закрытия формы, так что бы юзер не мог закрыть, но программно можно
alt-f4, через диспетчер и т.д. форма не закрывалась, а если в коде написать...

Закрыть порты на серверном терминале (какие порты в данном случае можно закрыть?)
Имеется серверный терминал,человек сказал что требуется закрыть ВСЕ порты....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru