Я вижу, что этот вопрос довольно старый, но воюет с моим собственным модемом по тем же причинам. Я использую C# atm для доступа к своему модему.
Они были связаны с модемом, как указано выше System.IO.Ports.SerialPort
. Вы должны сказать, с каким COM-портом подключиться.
Если у вас есть стандартные драйвера для модема установлен и он подключен к компьютеру, вы можете получить список назад открытых портов COM с помощью:
string[] com_ports = SerialPort.GetPortNames();
Предполагая, что вы хотите подключиться к первому COM-порту из массива выше. Открытие порта является простым:
SerialPort port = new SerialPort();
port.portname = com_ports[0];
// ... Insert other port parameters
port.Open();
Запись команд модема как Simples как:
port.write("some command");
И ответ пришедшего обратно:
String response = port.ReadExisting();
.. Только не забудьте добавьте "\r"
в конец всех команд модему. Потребовал мне день, чтобы узнать, почему-то, почему мой модем не ответил на мою команду ... :-)
Не могли бы вы предоставить немного более подробную информацию? В частности, какая модель GSM (make/model), какие интерфейсы у вас есть с помощью кода (библиотека .NET/COM Interop) и т. Д. –