Ваши обработчики нажатий кнопок создают новый клиент MQTT для каждого щелчка, и каждый клиент использует один и тот же идентификатор клиента. В каждом конкретном случае может быть только один клиент, использующий данный идентификатор клиента, поэтому повторное использование этого идентификатора клиента отключит предыдущий клиент MQTT.
Это разъединение означает, что никогда не бывает окна, в течение которого клиент подписывается на тему, а другой (или тот же) клиент публикует эту тему. Это можно исправить, подключившись один раз в конструкторе Form и используя то же соединение MQTT в вашем приложении. Это будет означать удаление следующих двух строк из обоих обработчиков щелчков:
client = new MqttClient("broker.hivemq.com");
byte code = client.Connect("lenovofullondude");
Можно ли создать два разных приложения. И второе приложение получит сообщение по этой теме (поскольку он подписчик)
blockquote>Да. Но обоим приложениям понадобятся разные идентификаторы клиентов во время соединения MQTT.