欢迎来到天天文库
浏览记录
ID:9491683
大小:135.50 KB
页数:30页
时间:2018-05-01
《gprs管理与创建apn拨号连接》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、GPRS管理与创建APN拨号连接 本文示例源代码或素材下载 本文主要介绍一些GPRS管理与创建APN拨号连接相关的知识点。新建拨号连接利用RAS实现,本文将详细介绍我在实现创建APN拨号连接时的一些经验,目前来说创建APN连接的资源非常少,尤其是c#实现的很少。GPRS管理主要是ConnectionManagerAPI,目前的资源比较丰富,我就不重复造轮子,提供一些参考资料以供参考。 一ConnectionManagerAPI ConnectionManager(连接管理器,为一系列API的集合)系列API的主要目的是为了集中管理基于EO如下图:
2、 1.新建拨号连接,新建APN连接 创建的拨号连接的操作,其实是创建一个Phone-BookEntries,并将其存入注册表中。 (1)相关API Thisfunctionchangestheconnectioninformationforanentryinthephonebookorcreatesanee。 lpbEntry是一个RASENTRY指针,包含:连接选项、国家码、区域码、本地号,可以指定本地IP地址、远程DNS服务器IP、远程RASBOOK 为所有的RAS连接,(用RasEnumEntries函数枚举得到的集合就是RASBOO
3、K下的集合); 其中,Entry即lpbEntry参数(RASENTRY结构体);DevCfg为lpb参数设置的设备设置信息; 利用RasSetEntryProperties建立了拨号连接后,我们会发现在机器上(设置->连接->连接->管理现有连接)中找不到已建立的连接。可以通过注册表操作, 使新建的拨号连接可以显示在机器的管理现有连接中。如下图: 如上图:机器中的管理现有连接对应注册表中[Connections]下的集合;(我们可以手工在机器上添加一个拨号连接,然后参考注册表中的设置,写入注册表)。 经过对比与测试,发现:[
4、Enabled]:是否为默认连接;[RequirePanager.CreateRasEn12345678910...下一页>>——感谢阅读这篇文章,..,try(测试连接2, cm)) { listBox1.Items.Add(测试连接2); button7.Enabled = true; }}RasManager:/// <summary>/// 创建拨号连接/// </summary>/// <param name=entryName>连接名称</param>/// <
5、param name=apn>apn,访问站点,如:cm</param>public static bool CreateRasEntry(string entryName, string apn){ RASENTRY rasEntry = nes = nee = Cellular Line;//蜂窝线路(GPRS) rasEntry.szDeviceType = modem; // rasEntry.szLocalPhoneNumber = string.Format(~GPRS!{0}, apn); rasEntry.di
6、ngProtocol = 1; //设置lpb //Pointer to a buffer that contains device-specific configuration information. //This is opaque TAPI device configuration information lpb[0] = 180; lpb[1] = 1; lpb[4] = 180; lpb[5] = 1; lpb[8] = 180; lpb[9] = 1; lpb[12] = 1; lpb[16] = 15; lpb[
7、20] = 1; lpb[24] = 2; lpb[76] = 1; lpb[80] = 2; lpb[84] = 2; //从D88位开始设置APN指令 for (int i = 0, step = 0; i < apn.Length; i++, step += 2) { lpb[88 + step] = (byte)apn[i]; } lpb[344] = 1; lpb[348] = 1; ret = RasSetEntryProperties(null, entryName, ref rasEntry,
8、 rasEntry.ds); //RasDialParams.size
此文档下载收益归作者所有