Search code examples
c#smsgsmmodem

Why does my GSM Modem Software get in the way when I'm trying to program it


I have a 3G USB Modem attached to my PC. I'm trying to write some software to control this modem using the C# programming language.

When I plug my modem in, as expected the modem application software opens up, but since I don't need it, I close the application straight away and make sure it's exited.

My C# application that I'm developing runs ok, but sometimes when I send SMS messages to the modem (After I close the application) the modem software re-opens itself and intercepts the SMS I've sent to it.

This prevents the application I am developing from receiving the SMS, and prevents me from processing the message in my software.

Does anyone know why (or how) my computer could be re-activating my modems software in this manner as it's preventing me from developing my SMS software correctly.

Thanks


Solution

  • Chances are (if your app & modem are anything like mine) that the modem installer, installed a background service without you realizing.

    Pop open your start menu, and type service into the search box, look for the service control manager in the results.

    enter image description here

    When you find it, click on it to open the service control manager.

    enter image description here

    Have a look in the list for a service name that seems to be the same as your Modem, or that might suggest it's for the modem

    enter image description here

    In my case, mines called 'Alcatel Sepang Modem Device Helper' as my 3G data card is an Alcatel USB 3G GSM Modem

    If you think you've identified the correct entry, double click it to open it's properties.

    enter image description here

    As you can see, I've already disabled mine, if your's is running you'll need to click 'Stop' then 'Ok' and re-open the properties before you can change the start-up type to Disabled or Manual.

    I don't use my Modem Software as mine's used exclusively by my own software, but you might want to set yours to manual so you can just click 'Start' and/or 'Stop' as you need to.

    Once the service is stopped, you should then find that it no longer interferes with your C# code.