|
2 / 2 / 2
Регистрация: 02.06.2017
Сообщений: 63
|
|
MS SQL ListView - ping строки, выбираемой из списка/отображение списка онлайн машин в сети29.09.2017, 22:59. Показов 1702. Ответов 8
Доброй ночи, форумчане!
Возник насущный вопрос... Может быть, уже и обсуждался, но, по неведомым мне причинам, или я не понял, или не нашел возможный ответ. Суть: MSSQL БД, WinForms программа. Есть ListView, 6 колонок(в целом не суть важно), отображает необходимую информацию. В одной из колонок четко прописан локальный, в другой - внешний IP-адрес компьютера в сети. На ListView находится ContextmenuStrip, при нажатии на строку ListView я бы с помощью ПКМ выбирал пинг до локального или внешнего ip адреса (в разных обработчика, естественно). Вероятно, при обработке события нужен SelectedIndexChange, возможно я не прав. 1. Рассмотрю любые идеи, или, если кто сталкивался, реализации данной идеи. 2. На будущее имеется плане реализации в ListView мониторинга доступности компьютеров онлайн - что-то типа ico/png разных цветов рядом с соответствующей строкой, показывающей, отвечает ли компьютер в настоящий момент. Идеи, реализация? Можно в ЛС, но желательно тут, дабы оставить ответы будущему поколению форумчан Буду рад любой помощи и советам/комментариям. Желательно с исходниками, или помощи на пальцах/для тупых. ![]() Спасибо! ![]()
0
|
|
| 29.09.2017, 22:59 | |
|
Ответы с готовыми решениями:
8
Клиент-сервер: отображение списка онлайн-клиентов Не отображаются элементы списка ListView, полученного у другого списка Создание списка, печать списка на экран, добавления элемента в начало списка, конец списка |
|
|
||
| 30.09.2017, 23:02 | ||
|
Я бы предложил (есди все компьютеры работают на ОС Windows) использовать такую штуку, как WCF Discovery/WCF Announcement (обнаружение/объявление). Очень удобная штука, по правде говоря.
0
|
||
|
2 / 2 / 2
Регистрация: 02.06.2017
Сообщений: 63
|
|
| 01.10.2017, 22:02 [ТС] | |
|
Вечер добрый.
Все компьютеры на Винде, да. Мне по факту не нужно их обнаружение, т.к. ip и имя компа в базе под MSSQL. Именно пингование по адресу из списка Listview. Ну, и иконка статуса в отдельном столбце...
0
|
|
|
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
|
|
| 02.10.2017, 13:37 | |
|
не понятна суть вопроса - Вы не знаете как организовать пинг на шарпе, или не знаете как выдернуть значение в выбранной строке?
И к тому же учтите, что на некоторый компах может стоять firewall, который будет отсекать ICMP запрос даже в рамках локальной сети (не говоря уже о том, что на внешний адрес, да еще и если он выставленный прямо на винде - я бы сам отсекал все внешние раздражители дабы не попасть на флуд по пингу)
0
|
|
|
2 / 2 / 2
Регистрация: 02.06.2017
Сообщений: 63
|
|
| 02.10.2017, 13:50 [ТС] | |
|
Конкретно в данном случае - как взять значение IP из клацнутой строки в listview и отпинговать адрес.
Какого то глобального флуда по пингу не подразумевается - в данном случае вопрос стоит доступности компьютера и получения его ответа. Опять же, это может быть не компьютер, допустим, а КПК с фиксированным IP адресом, пингующийся через Wi-Fi точку.
0
|
|
|
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
|
|
| 02.10.2017, 14:45 | |
Сообщение было отмечено GuardianCoder как решение
Решение
Тогда начинайте отталкиваться не от того, что у Вас есть ListView (его может и не быть, и точно должно не быть на этапе проектирования системы).
Отталкивайтесь от того, что у Вас есть набор строк (а в них есть колонки). Т.е. есть набор сущностей, в данном случае - это компы, из этого следует что есть класс комп со своими полями, и есть какой-то класс "набор компов", а в классе набора есть какой-то лист/таблица компов, в которую мы можем добавлять/удалять компы. И грубо говоря есть свой личный сериализатор/десериализатор который по запросу из сиквела вернет нам сущность "набор компов". Из этого набора (зная Id компа) - уже достаточно тривиально достать айпишник данного компа. А Id нам отдаст уже тот самый злосчатсный ListView своим свойством SelectedRow (может по-другому называется, уже не помню что там в листе можно выцепить). Но это так бы сделал я, а как сделано сейчас - мне пока не понятно, что и как у Вас тянется.
1
|
|
|
2 / 2 / 2
Регистрация: 02.06.2017
Сообщений: 63
|
||||||
| 26.12.2017, 16:37 [ТС] | ||||||
|
Кстати, всё же хочу поделиться на будущее своей наработкой. Хулигану отдельное спасибо за толчок в нужном направлении!
Мне банально проще оказалось перевести из ListView в datagridview и оттуда таскать данные. Любые комментарии и пинки приветствуются. Шарп только осваиваю, потому, за красоту и адекватность кода ручаться и вовсе не могу.
0
|
||||||
|
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
|
||
| 27.12.2017, 09:48 | ||
|
1. Очень много пунктов "Другая ошибка" - смысл тогда перечислять их, можно было всё каскадно перечислить и проваливаться без break каждый раз, ну да ладно, до этого дойдете.
2. Не нужно каждый раз подписываться на событие в цикле, достаточно 1 раз подписаться на этапе загрузки формы (имею в виду на событие пинга). 3. Выдергивать значение из грида - тоже не самое удачное решение, лучше таскать данные из объекта, что прибинден к гриду - тогда можно было бы таскать точно так же и из LisView.
0
|
||
|
2 / 2 / 2
Регистрация: 02.06.2017
Сообщений: 63
|
|
| 27.12.2017, 09:59 [ТС] | |
|
И тем не менее - спасибо!
Буду копать дальше по мере возможности и времени)
0
|
|
| 27.12.2017, 09:59 | |
|
Помогаю со студенческими работами здесь
9
Batch ping из списка адресов Написать код программы, выполняющей растяжку списка и вставку, удаление из списка и сжатие списка
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|