|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,716
|
||||||
Не пойму как очистить массив строк11.04.2023, 20:46. Показов 5855. Ответов 101
Метки нет (Все метки)
Перепробовал все методы но не выходит. Есть переменная string[] PortCOM; она заполняется из метода SerialPort.GetPortNames();
но нужно потом очистить PortCOM. Как это сделать?
0
|
||||||
| 11.04.2023, 20:46 | |
|
Ответы с готовыми решениями:
101
Как очистить таблицу в БД от строк Как очистить массив Как очистить только первую колонку всех строк в DataGridView не затрагивая другие? |
|
|
|
| 14.04.2023, 20:28 | |
|
VladimirU, тогда диагноз такой: если порт открыт, драйвер не может освободить некие ресурсы при обнаружении отключения порта от USB. Приложение должно само среагировать на отключение и быстро закрыть останки. Если вы снова подключаете устройство, пока предыдущий сеанс связи не закрыт, получаются вот такие глюки.
Добавлено через 4 минуты Это "фича" комплектного виндового драйвера usbser.sys. У Prolific и Silabs драйвера свои, в которых разработчики эту возможность учли и в коде предусмотрели.
0
|
|
|
|
||
| 14.04.2023, 20:37 | ||
|
VladimirU, ну как вариант, остается читать из ветки реестра и ориентироваться на нее. Кстати, можно так и попробовать сразу открыть порт при отключении/подключении МК.
0
|
||
|
|
||
| 14.04.2023, 20:41 | ||
|
Но если охота разобраться... Берём ILSpy или сразу исходники. Вытаскиваем в свою программу код SerialPort.GetPortNames() и отлаживаем.Добавлено через 3 минуты Некоторые упоминания проблемы: https://social.msdn.microsoft.... ?forum=wdk
0
|
||
|
|
||
| 14.04.2023, 20:48 | ||
|
VladimirU,
Библиотека для получения списка портов самыми разными методами: http://www.naughter.com/enumser.html Можно собрать под себя в Visual Studio C++ и подключить к C# через PInvoke. Ещё видел такой глюк: запрашиваем список портов через WMI и приложение сразу падает. WMI собрал кривую инфу с кривого драйвера USB-RS232 адаптера и не смог переварить.
0
|
||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,716
|
||
| 14.04.2023, 22:06 [ТС] | ||
|
Если бы весь класс перезагрузить можно было то проблема бы ушла.
Добавлено через 1 минуту Добавлено через 59 секунд Чего то NET не докумекал поэтому и спрашивал про кишки метода SerialPort.GetPortNames(); Добавлено через 46 секунд Но хорошее предложение wizard41, запрос напрямую из реестра. Добавлено через 3 минуты С другой стороны NET не гарантировал работу с виртуальными COM так что проблемы программиста.
0
|
||
|
|
|||
| 14.04.2023, 22:06 | |||
|
0
|
|||
| 15.04.2023, 10:15 | |
|
Костылить последнее дело, когда уже пар из ушей идёт. Мне думается, что предложение Rius самое дельное. То есть надо организовать такой алгоритм: поймали событие потери порта, сразу же гасим все его ресурсы; удаляем этот порт из списка подключений в программе; даём время системе раздуплиться и только потом вызываем
SerialPort.GetPortNames().
0
|
|
|
1 / 1 / 0
Регистрация: 02.10.2012
Сообщений: 110
|
|
| 15.04.2023, 11:46 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 02.10.2012
Сообщений: 110
|
|
| 15.04.2023, 11:48 | |
|
0
|
|
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,716
|
|
| 15.04.2023, 12:32 [ТС] | |
|
prajdziswet, мне бы кишки GetPortNames()
0
|
|
|
|
|
| 15.04.2023, 12:36 | |
|
Исходники фреймворка можно скачать по ссылке в Не пойму как очистить массив строк
Исходники SerialPort: <achive>\Source\ndp\fx\src\sys\system\IO\ports\SerialPort.cs
0
|
|
|
1 / 1 / 0
Регистрация: 02.10.2012
Сообщений: 110
|
|||||||
| 15.04.2023, 14:44 | |||||||
0
|
|||||||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,716
|
|
| 15.04.2023, 14:51 [ТС] | |
|
prajdziswet, ясно спасибо. Все таки из реестра читает. Я сегодня накидал тоже что бы из реестра читал порты использовал класс Regedit и все тоже самое. Фигня какая то.
Добавлено через 40 секунд Так скоро до asm дойду.
0
|
|
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,716
|
|
| 24.04.2023, 17:45 [ТС] | |
|
После небольшого перерыва двигаюсь дальше.
https://youtu.be/8y2C8zbhTpQ Нареканий в обработки работы сервомотором нет. Запустил на STEP DIR управление энкодер на 10 000 импульсов пришлось делить в самом МК на таймере да 2000. В общем при достижении 300 об.мин на валу ЦП пк загружается до 60% а он ryazan 3 2200g. Вроде как скорости то небольшие для такого компа а ЦП по мне так очень сильно грузится. Есть ли способы оптимизировать как то снизить расходы ресурсов ЦП?
0
|
|
|
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
|
|
| 24.04.2023, 18:01 | |
|
0
|
|
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,716
|
|
| 24.04.2023, 18:07 [ТС] | |
|
Someone007, как там в фильме Кингсман "Манеры лицо мужчины" у вас говно манеры в общении.
Добавлено через 1 минуту Завтра выложу немного упрощу для удобочитаемости.
0
|
|
| 24.04.2023, 18:07 | |
|
Как очистить статический массив? Как очистить массив выделеной памяти Как очистить статический массив структур? Как очистить или удалить массив BitmapImage Можно ли очистить новый массив от нулей и как Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|