Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/26: Рейтинг темы: голосов - 26, средняя оценка - 4.81
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315

Синхронизация приложений

12.09.2010, 13:51. Показов 4985. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот такая беда в общем:
как синхронизировать работу 2х разных приложений, чтобы они отправляли друг другу сообщения или как их там, Именованные события операционной системы!вот.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.09.2010, 13:51
Ответы с готовыми решениями:

Синхронизация приложений
Вот такое задание: Написать 2 программы. 1ая – управляющая, 2ая – клиент. Управляющая программа запускает нужное количество...

Синхронизация приложений на ПК и Android
Можно ли сделать это, ест-но при подключении к интернету ПК и Android, какие компоненты при этом нужно использовать?

Синхронизация двух приложений
Есть два приложения на delphi, одно vcl другое firemonkey и по одной форме в каждом. Формы располагаются на экране вместе. Нужно при...

13
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
12.09.2010, 14:42
Примером я здесь вряд ли помогу (ещё не приходилось заниматься синхронизацией), могу помочь с объявлением API и переводом документации в MSDN.
0
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
12.09.2010, 21:00  [ТС]
в мсдн-е то я примеры какие то видел, но там и коменты на английском и не понятен код)

Добавлено через 6 часов 17 минут
Подсказали что это можно сделать через класс message чтоли
0
106 / 7 / 2
Регистрация: 09.09.2010
Сообщений: 24
12.09.2010, 22:13
Накидал за 5 минут элементарный пример, без всяких проверок, обработок исключений и т.п.
Программа-"сервер":
C#
1
2
3
4
5
6
7
8
9
10
11
12
namespace EWH_Server_test {
    class Program {
        static void Main(string[] args) {
            bool createdNew;
            EventWaitHandle ewh = new EventWaitHandle(false, EventResetMode.AutoReset, "TestSystemEvent", out createdNew); // Создаем новый дескриптор
            Console.WriteLine("Ждемс...");
            WaitHandle.WaitAny(new EventWaitHandle[] {ewh}); // ждем, пока его кто-нить поднимет
            Console.WriteLine("Дождались!");
            Console.ReadLine();
        }
    }
}
Программа-"клиент":
C#
1
2
3
4
5
6
7
8
9
10
namespace EWH_Client_test {
    class Program {
        static void Main(string[] args) {
            EventWaitHandle ewh;
            ewh = EventWaitHandle.OpenExisting("TestSystemEvent"); // Открываем дескриптор с заданным именем
            ewh.Set(); // Поднимаем его
            Console.ReadLine();
        }
    }
}
На самом деле через именованные дескрипторы ожидания (так это, кажется, MSDN переводит) много не наработаешь. В основном их используют в многопоточных приложениях для блокирования/синхронизации исполнения потоков. Но, как частный случай, можно и между процессами их использовать.

Почитайте про IPC (Inter Process Communications) и какие они в Windows бывают.
ИМХО (но это мое частное мнение) - наиболее простой и удобный механизм - Named Pipes. Посмотрите в встроенной справке примеры в описании классов NamedPipeClientStream и NamedPipeServerStream. Там тоже все по-английски, но примеры очень простые.
Сервер создает именованный канал и в него пишет, клиент к нему подключается и из него читает.
1
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
12.09.2010, 22:15  [ТС]
Спасибо, завтра с утреца попробую кодик=) да наверно есть пути и полегче да вот в лабе задание такое просто, приходится мучаться)
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
12.09.2010, 23:04
Вот пример синхронизации на API:
Вложения
Тип файла: rar sinchronisation.rar (41.1 Кб, 73 просмотров)
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
12.09.2010, 23:52
Все действия нужно поместить в том месте где происходит вывод на консоль...
0
106 / 7 / 2
Регистрация: 09.09.2010
Сообщений: 24
13.09.2010, 01:39
Я тут случайно задумался...
А этот вопрос не связан с соседней вашей веткой "Широковещательные сообщения"?
Тогда вам видимо нужно решение через API работы с очередью сообщений... И это все немножко другая история...
0
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
13.09.2010, 07:12  [ТС]
Да с широковещь-ми связщан,типа через него получить дескриптор 2й проги чтоли, и кто то говорил что есть класс меssage только как им пользоваться)
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
13.09.2010, 17:26
Цитата Сообщение от 23Alex24 Посмотреть сообщение
дескриптор 2й проги
Какой именно: процесса или окна?
Цитата Сообщение от 23Alex24 Посмотреть сообщение
кто то говорил что есть класс меssage только как им пользоваться
Чтобы отправить сообщение окну чужого приложения нужно использовать SendMessage.
0
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
13.09.2010, 20:34  [ТС]
я думаю окна, а как с этим сенд месадж?
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
13.09.2010, 20:55
SendMessage.
0
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
20.09.2010, 17:01  [ТС]
А кто может прокоментить код? а то хрен че поймешь)
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
20.09.2010, 18:32
Что не понятно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.09.2010, 18:32
Помогаю со студенческими работами здесь

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

Не работает синхронизация приложений с play market
Добрый день. Надеюсь на Вашу помощь. Был гугл аккаунт, к которому были подвязаны все приложения, скачанные на смартфон. Случилось так, что...

Модуль EVO II синхронизация 50гц, На какой ножке контроллера синхронизация шим двигателя?
Частый дефект для модулей EVO II с коллекторным двигателем - нет управления двигателем при помехах в сети. Помехи создают диммеры, блоки...

Клиент-Сервер приложений-SQLServer : как сделать сервер приложений
Вкратце - клиент динамически формирует SQL запрос и передает строку текста (SQL Query) серверу приложений работающему на другой машине ...

Автоматическая установка приложений вирусом и открытие новых вкладок Автоматическая установка приложений виру
Вот логи. Пожалуйста помогите


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru