114 / 112 / 62
Регистрация: 15.03.2013
Сообщений: 561
Записей в блоге: 5
1

Список COM портов

27.06.2015, 18:22. Показов 14416. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Может кто-нибудь написать простой примерчик для получения списка ком портов в с++.
В нете читал про GetSerialPortsList. Оно?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.06.2015, 18:22
Ответы с готовыми решениями:

Список COM портов
Доброго времени суток! Делаю программку по считывают COM портов из реестра. Использую такой код: ...

Список портов в/в
Здравтсвуйте До перехода в защищенный режим можно юзать bios-прерывания, однако после перехода,...

запретить список портов
Всем привет!!! Такой вопрос: есть сервер win 2003 он раздает интернет, стоит Traffic Inspector, как...

Получить список TCP портов
Здравствуйте. Как мне получить список ВСЕХ незанятых портов машины. Пытаюсь IPGlobalProperties...

7
10231 / 6609 / 498
Регистрация: 28.12.2010
Сообщений: 21,156
Записей в блоге: 1
27.06.2015, 19:25 2
Обработчик результата, возвращаемого CreateFile() https://msdn.microsoft.com/en-... s.85).aspx c аргументом имени COM порта по списку в цикле, вот и все получение списка доступных портов.
1
Эксперт .NET
10554 / 6481 / 1503
Регистрация: 25.05.2015
Сообщений: 19,631
Записей в блоге: 14
27.06.2015, 19:44 3
Читаем ключи из реестра HKEY_LOCAL_MACHINE\\HARDWARE\\DEVICEMAP\\SERIALCOMM и смотрим там названия портов.
1
114 / 112 / 62
Регистрация: 15.03.2013
Сообщений: 561
Записей в блоге: 5
27.06.2015, 20:33  [ТС] 4
С реестриком надо попробовать =)

Добавлено через 44 минуты
Сделал по примеру с интернета. В буфере на выходе одни нули. Чего не так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <Windows.h>
#include <iostream>
 
using namespace std;
 
int main(){
    
    HKEY rKey;
    char Reget[256] = {0};
    DWORD RegetPath=sizeof (Reget);
    LPCWSTR path=L"\\HARDWARE\\DEVICEMAP\\SERIALCOMM";
    RegOpenKeyEx(HKEY_LOCAL_MACHINE,path, NULL, KEY_QUERY_VALUE, &rKey);
    RegQueryValueEx(rKey,L"Device", NULL, NULL,(LPBYTE)&Reget, &RegetPath);
    cout<<Reget<<endl;
    system("pause");
    return 0;
}
0
Эксперт .NET
10554 / 6481 / 1503
Регистрация: 25.05.2015
Сообщений: 19,631
Записей в блоге: 14
27.06.2015, 20:35 5
Посмотрите через редактор реестра. Там нет Device.
0
114 / 112 / 62
Регистрация: 15.03.2013
Сообщений: 561
Записей в блоге: 5
27.06.2015, 20:38  [ТС] 6
Правильно. Там есть "Имя", "Тип", "Значение".....чего писать
0
Эксперт .NET
10554 / 6481 / 1503
Регистрация: 25.05.2015
Сообщений: 19,631
Записей в блоге: 14
27.06.2015, 20:42 7
https://www.cyberforum.ru/com-... ost7151889
Определить существующие com-порты системы
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
28.06.2015, 02:29 8
EnumSerialPorts v1.27 - A set of functions to enumerate serial ports

Features
  • Simple C++ class interface.
  • The code provides methods which support both Windows 9x and the Windows NT kernel versions of Windows.
  • The code is fully Unicode compliant and include Unicode built options in the workspace file.
  • Internally the code provides 9 different ways (yes you read that right: Nine) of enumerating serial ports: Using CreateFile, QueryDosDevice, GetDefaultCommConfig, two ways using the Setup API, EnumPorts, WMI, Com Database & enumerating the values under the registry key HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM.
  • Can be compiled with or without MFC and or ATL support. If you do not want MFC support, then the code falls back to using the ATL CSimpleArray collection classes. The code can also be compiled without MFC and ATL support meaning that it should work on Express SKU's of Visual Studio. In this case the standard STL collection classes are used.
  • All of the configuration of the code is controlled by the following preprocessor values: CENUMERATESERIAL_USE_STL, _AFX, NO_ENUMSERIAL_USING_CREATEFILE, NO_ENUMSERIAL_USING_QUERYDOSDEVICE, NO_ENUMSERIAL_USING_GETDEFAULTCOMMCONFIG, NO_ENUMSERIAL_USING_SETUPAPI1, NO_ENUMSERIAL_USING_SETUPAPI2, NO_ENUMSERIAL_USING_ENUMPORTS, NO_ENUMSERIAL_USING_WMI, NO_ENUMSERIAL_USING_COMDB & NO_ENUMSERIAL_USING_REGISTRY.
0
28.06.2015, 02:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.06.2015, 02:29
Помогаю со студенческими работами здесь

Где посмотреть список com портов?
Здесь не видно

Список сом-портов, доступных в системе
Кто-нибудь разбирался как получить Список сом-портов, доступных в системе? Пока единственный...

Как узнать список доступных портов в Qt
Здравствуйте, я хочу создать программу для &quot;общения&quot; с ардуино. Мне нужно узнать доступные порты и...

[Qt] Получить список tcp соединений и прослушиваемых портов
Никак не могу найти, как получить список текущих подключений. Нужна такая же информация, как при...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru