Можно ли отправить MessageBox по сети на С# без какого-либо программного обеспечения для прослушивания на принимающей стороне?

До сих пор я нашел множество способов отправлять и получать файлы по сети (в основном с этого сайта), но я не смог найти учебник о том, как это сделать без программного обеспечения для прослушивания на принимающей стороне.

Пример:

Я хочу отправить сообщение с заголовком Привет и телом Там.

Обычно я бы написал MessageBox.Show("Hello","There");

Однако я хочу иметь возможность отправлять MessageBox по сети.

Как бы я это сделал, имея в виду, что:

  • Ни на одном из компьютеров нет прав администратора
  • Я использую Windows 7 на обоих компьютерах
  • На принимающей стороне не будет программного обеспечения для прослушивания.

Заранее благодарю всех, кто поможет мне с этой проблемой.

РЕДАКТИРОВАНИЕ: Это не обязательно должен быть MessageBox, я мог бы создать похожий форум.


person Minicl55    schedule 03.05.2012    source источник
comment
Это не имеет никакого смысла. Вы пытаетесь спросить, как сделать так, чтобы окно сообщений отображалось на удаленной машине? В противном случае я не знаю, сделать скриншот и отправить его по электронной почте?   -  person asawyer    schedule 03.05.2012
comment
@asawye Да, но без программы для прослушивания, чтобы оно не появилось на принимающей стороне. РЕДАКТИРОВАТЬ: это должно быть в форме messageBox.   -  person Minicl55    schedule 03.05.2012
comment
Нет, но зачем тебе это? Чего вы на самом деле пытаетесь достичь?   -  person asawyer    schedule 03.05.2012
comment
Я думаю, что вы будете бороться без прав администратора. В Windows есть служба обмена сообщениями, которую можно использовать для отправки сообщений. Возможно, вы захотите попробовать и каким-то образом внедрить это в свое приложение: support.microsoft.com/kb/ 168893   -  person Lock    schedule 03.05.2012
comment
@Lock Я думаю, что это можно квалифицировать как программное обеспечение для прослушивания   -  person asawyer    schedule 03.05.2012
comment
Если бы он был встроен в Windows, он бы работал со мной. Мне просто нужно, чтобы человек на принимающей стороне НИЧЕГО не делал со своим компьютером.   -  person Minicl55    schedule 03.05.2012
comment
Возможность выполнять произвольный код на другой машине в сети без прав администратора на машине была бы кошмаром.   -  person asawyer    schedule 03.05.2012
comment
@Mincl55, это звучит так, как будто вы хотите написать какую-нибудь вредоносную программу, которая подталкивает людей к рекламе... Скорее всего, у вас есть благонамеренная причина искать то, что вы спрашиваете, но эта причина почему-то не отображается в вашем сообщения. т.е. причина может заключаться в том, что я хочу уведомить всех об обновлении моего кода или оказать немедленную помощь человеку или показать последнюю политику компании...   -  person Alexei Levenkov    schedule 03.05.2012
comment
@AlexeiLevenkov Нет, не поэтому. Кроме того, messageBox не может кому-то подтолкнуть рекламу. Он может отправить ссылку на рекламу... но не саму рекламу.   -  person Minicl55    schedule 03.05.2012
comment
Minicl55 Я не уверен, что вы понимаете возражения. Если вы можете создать окно сообщений, вы можете запустить что угодно. Вредоносное ПО, трояны, вирусы, рекламный спам, кража файлов, миры вашей устрицы. Вы понимаете, почему это невозможно?   -  person asawyer    schedule 03.05.2012


Ответы (5)


Это все равно, что сказать: «Могу ли я заставить вас делать то, что я вам говорю, даже если вы не слушаете, что я говорю?»

На что ответ, очевидно, нет.

Если другой парень не собирается реагировать на то, что вы говорите, то он и не будет.

person user541686    schedule 03.05.2012

Вы не можете сделать это с MessageBox, так как это будет довольно большая лазейка.

Если вы использовали Windows XP, вы могли бы использовать команду «net send» из командной строки (следовательно, вызываемую каким-то образом из программы C # или из пакетного файла; что угодно), в зависимости от конфигурации машин.

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/net_send.mspx

В Windows Vista была аналогичная программа под названием msg.exe, но в Windows Seven она была полностью удалена.

-

Короче, не с Windows Seven нет.

person orangething    schedule 03.05.2012

Вы можете раскошелиться и вызвать PsExec из Sysinternals, чтобы скопировать и затем запустить программу на удаленном компьютере в вашей сети — программа может быть слушателем, который вы пишете, или это может быть просто программа, которая отображает сообщение, которое она дала по команде линия. PsExec не делает ничего, чего вы не могли бы сделать, вызывая Windows API и используя RPC напрямую, но это большая работа :) Возможно, проблемы с привилегиями. В конце концов, у пользователя, не являющегося администратором, нет возможности «из коробки» возиться с другой машиной в сети. Вам понадобятся разрешения, чтобы быть расслабленными — может быть, с помощью групповой политики? Но если у вас есть групповая политика, просто установите прослушиватель с помощью .msi или сценария входа.

Можете ли вы предоставить дополнительную информацию о том, ПОЧЕМУ вы хотите это сделать? Возможно, есть лучший способ получить уведомление, которое вам нужно.

person Ian Yates    schedule 03.05.2012
comment
Я в основном хочу это как инструмент повышения производительности. ИТ-специалисты не дадут моему компьютеру прав администратора (по иронии судьбы, большинство этих ИТ-специалистов не узнают, что такое «C#»). Если бы я мог отправить ящик для массовых сообщений, это было бы проще, чем ходить всем людям и рассказывать им об этом. - person Minicl55; 03.05.2012
comment
Я думаю, что это более или менее причина, по которой net send был удален из Windows ... Ни один здравомыслящий человек не хочет видеть тонны сообщений, появляющихся на экране. Есть IM для IM, электронная почта/веб-сайты для уведомлений, но нет хорошего использования для всплывающих окон. Если вы назовете свою настоящую цель (если только не насолить как можно большему количеству людей), кто-то может предложить альтернативные решения. - person Alexei Levenkov; 03.05.2012
comment
@AlexeiLevenkov Может быть, мое шутливое предложение отправить скриншот по электронной почте было правильным! - person asawyer; 03.05.2012
comment
@asawyer - это определенно лучшее решение: P - person Ian Yates; 04.05.2012

Это возможно с помощью инструмента msg.exe, включенного в Windows. используйте команду

Shell("cmd.exe /c msg * /SERVER:" & ipAddress & " " & deineNachricht)

Если на вашем компьютере нет msg, загрузите его откуда-нибудь.

person Not just Code    schedule 02.11.2019

Попробуйте посмотреть код этого проекта — он использовал программу командной строки net send для отправки сообщений на удаленные машины, хотя я не уверен, как ваш пробег будет проходить без прав администратора:

http://www.google.com.au/url?sa=t&rct=j&q=&esrc=s&frm=1&source=web&cd=1&ved=0CCcQFjAA&url=http%3A%2F%2Fwww.codeproject.com%2FСтатьи%2F9466%2FThe-NetSend-Plus-NET-C&ei=hNOhT6ewH82RiQe--eCNCQ&usg=AFQjCNHzAjhU7SU7kuPSCQBLElR5vb1sIg

person Lock    schedule 03.05.2012