Szukam sposobu, aby określić, czy COM jest standardowym COM lub jeśli jest to SPP COM, znany również jako adapter Bluetooth wymiany kabla dla urządzenia COM.Określić, czy port szeregowy jest normalny COM lub SPP
Mam urządzenie, które działa zarówno w USB (COM -> USB) i Bluetooth, a interfejs Bluetooth działa z SPP.
Obecnie używam System.IO.Ports.SerialPort.GetPortNames()
, aby uzyskać COM.
Czy istnieje sposób sprawdzenia, czy jest połączony z Bluetooth lub USB?
ROZWIĄZANIE:
System.Management.ManagementObjectSearcher Searcher = new System.Management.ManagementObjectSearcher("Select * from WIN32_SerialPort");
foreach (System.Management.ManagementObject Port in Searcher.Get())
{
foreach (System.Management.PropertyData Property in Port.Properties)
{
Console.WriteLine(Property.Name + " " + (Property.Value == null ? null : Property.Value.ToString()));
}
}
a wyjście jest coś podobnego:
Availability 2
Binary True
Capabilities
CapabilityDescriptions
Caption Standard Serial over Bluetooth link (COM10)
ConfigManagerErrorCode 0
ConfigManagerUserConfig False
CreationClassName Win32_SerialPort
Description Standard Serial over Bluetooth link
DeviceID COM10
ErrorCleared
ErrorDescription
InstallDate
LastErrorCode
MaxBaudRate 9600
MaximumInputBufferSize 0
MaximumOutputBufferSize 0
MaxNumberControlled
Name Standard Serial over Bluetooth link (COM10)
OSAutoDiscovered True
PNPDeviceID BTHENUM\{00001101-0000-1000-8000-00805F9B34FB}_LOCALMFG&0000\8&3062A492&0&000000000000_0000001C
PowerManagementCapabilities System.UInt16[]
PowerManagementSupported False
ProtocolSupported
ProviderType RS232 Serial Port
SettableBaudRate True
SettableDataBits True
SettableFlowControl True
SettableParity True
SettableParityCheck False
SettableRLSD True
SettableStopBits True
Status OK
StatusInfo 3
Supports16BitMode False
SupportsDTRDSR True
SupportsElapsedTimeouts True
SupportsIntTimeouts True
SupportsParityCheck False
SupportsRLSD True
SupportsRTSCTS True
SupportsSpecialCharacters False
SupportsXOnXOff False
SupportsXOnXOffSet False
SystemCreationClassName Win32_ComputerSystem
SystemName JVALDRON-PC
TimeOfLastReset
Zobacz moje odpowiedzi na http://stackoverflow.com/questions/2085179/ how-can-i-find-out-a-com-port-of-a-bluetooth-device-in-c/2096728 # 2096728 i http://stackoverflow.com/questions/6850965/how-come- getdefaultcommconfig-doesnt-work-with-bluetooth-spp-devices/6997320 # 6997320 – alanjmcf