使用AT命令的数据调用失败

时间:2015-01-27 19:09:49

标签: at-command 3g modem 3g-network dial-up

我使用命令将3g调制解调器连接到互联网。所有消息都显示一切正常但是没有互联网访问,并且Windows 7中的调制解调器状态被删除。来自调制解调器的led就像它连接到互联网一样。 我使用的命令是(按此顺序):

  

COM5 115200 4000

     

CODE简介:AT + CGREG?   + CGREG:0,1确定

     

代码介绍:AT + CGREG =?   + CGREG:(0-2)确定

     

CODE简介:AT + CGREG?   + CGREG:0,1确定

     

CODE简介:AT + COPS?   + COPS:0,2," 22603",0 OK

     

CODE简介:AT + CSQ   + CSQ:21,99 OK

     

代码介绍:AT + CGATT = 1 OK

     

代码介绍:AT + CGDCONT = 1," IP","宽带"行

     

代码介绍:AT + CGACT = 1,1 OK

     

CODE简介:AT + CEER   + CEER:无原因信息确定

     

CODE简介:AT + CGACT?   + CGACT:1,1 OK

     

CODE简介:AT + CGATT?   + CGATT:1好的

     

CODE简介:AT + CGREG?   + CGREG:0,1确定

     

CODE简介:AT + CGDCONT?   + CGDCONT:1," IP","宽带"," 0.0.0.0",0,0确定

     

代码介绍:AT + CGACT = 0,1确定

     

CODE简介:AT + CEER   + CEER:无原因信息确定

     

CODE简介:AT + COPS?   + COPS:0,2," 22603",0 OK

     

CODE简介:AT + CSQ   + CSQ:21,99 OK

     

代码介绍:AT + CGATT = 1 OK

     

代码介绍:AT + CGDCONT = 1," IP","宽带"行

     

代码介绍:AT + CGACT = 1,1 OK

     

CODE简介:AT + CEER   + CEER:无原因信息确定

     

CODE简介:AT + CGACT?   + CGACT:1,1 OK

     

CODE简介:AT + CGATT?   + CGATT:1好的

     

CODE简介:AT + CGREG?   + CGREG:0,1确定

     

CODE简介:AT + CGDCONT?   + CGDCONT:1," IP","宽带"," 0.0.0.0",0,0确定

     

代码介绍:AT + CGACT = 0,1确定

     

CODE简介:AT + CEER   + CEER:无原因信息确定

我错过了什么?

2 个答案:

答案 0 :(得分:1)

可能在设备上建立连接是不够的,因为不会通知窗口连接。您应该在Windows中设置调制解调器并使用它来建立连接。

DotRas是一个在c#中完成此项目的项目。但也可能有其他语言的其他解决方案。如果您正在编写脚本,可以查看WMI。调制解调器也有类。

答案 1 :(得分:1)

我找到了问题的答案。要通过3g调制解调器连接到互联网,您需要创建一个拨号会话或使用一个现有的。 visual C#中最简单的方法是使用DotRas库并创建de dial-up。 实施例

private void connectbtn_Click(object sender, EventArgs e)

{
            string path = RasPhoneBook.GetPhoneBookPath(RasPhoneBookType.User);
            RasPhoneBook pbk = new RasPhoneBook();
            pbk.Open(path);
            RasDevice modem = RasDevice.GetDeviceByName("HUAWEI Mobile Connect - 3G Modem",RasDeviceType.Modem);
           //get the exact device name from windows
            RasEntry entry = RasEntry.CreateDialUpEntry("Broadband", "*99#", modem);
            entry.Options.RemoteDefaultGateway = true;
            if (RasEntry.Exists("Broadband", path) == false)
            { pbk.Entries.Add(entry); }
            RasDialer dialer = new RasDialer();
            dialer.EntryName = "Broadband";
            dialer.PhoneBookPath = path;
            dialer.Credentials = new NetworkCredential();

            dialer.Credentials.Domain = "broadband";
            dialer.PhoneNumber="*99#";
            dialer.Dial();

        }

请注意您的连接工作和上网功能。