6640|7

2

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

wince下手动cdma拨号成功,调用rasdial函数实现自动拨号提示691错误 [复制链接]

编程环境是vs2005,语言是c#,板子CDMA2440,实现自动拨号的函数如下:
   
            //枚举可用的连接(在这里只有一个“我的连接”,手动可以连上)
            public static RASENTRYNAME[] GetRASEntries()
        {
            RASENTRYNAME[] result = null;

            int size = Marshal.SizeOf(typeof(RASENTRYNAME));
            int Cb = size;//new IntPtr(size);
            int cEntries = 0; //IntPtr.Zero;

            IntPtr pEntries = IntPtr.Zero;
            try
            {
                pEntries = Marshal.AllocHGlobal(Cb);
                Marshal.Copy(BitConverter.GetBytes(size), 0, pEntries, 4);//pEntries->dwSize = size;

                uint ret = RasEnumEntries(IntPtr.Zero, IntPtr.Zero, pEntries, ref Cb, ref cEntries);
                if (ret != 0) //ERROR_BUFFER_TOO_SMALL;ERROR_NOT_ENOUGH_MEMORY
                {
                    if (pEntries != IntPtr.Zero)
                    {
                        Marshal.FreeHGlobal(pEntries);
                    }
                    pEntries = Marshal.AllocHGlobal(Cb);
                    Marshal.Copy(BitConverter.GetBytes(size), 0, pEntries, 4);//pEntries->dwSize = size;
                }

                ret = RasEnumEntries(IntPtr.Zero, IntPtr.Zero, pEntries, ref Cb, ref cEntries);
                if (ret == 0) //SUCCESS
                {
                    if (cEntries > 0)
                    {
                        result = CreateArrayOfType(pEntries, size, cEntries);
                    }
                }
                else
                {
                    throw new Exception(string.Format("RasEnumEntries failed: Error {0}", ret));
                }
            }
            finally
            {
                if (pEntries != IntPtr.Zero)
                {
                    Marshal.FreeHGlobal(pEntries);
                }
            }

            return result;
        }
      //拨号连接

             public static void DialUp()
        {
            //check the connection state first
            if (IntPtr.Zero != m_pRasSession)
            {
                RASCONNSTATE resConnState = (RASCONNSTATE)GetStatus();
                if (RASCONNSTATE.RASCS_Connected == resConnState ||
                    RASCONNSTATE.RASCS_PortOpened == resConnState ||
                    RASCONNSTATE.RASCS_DeviceConnected == resConnState ||
                    RASCONNSTATE.RASCS_AllDevicesConnected == resConnState ||
                    RASCONNSTATE.RASCS_Authenticate == resConnState ||
                    RASCONNSTATE.RASCS_AuthAck == resConnState ||
                    RASCONNSTATE.RASCS_Authenticated == resConnState)
                {
                    return;
                }
            }

            RASDIALPARAMS rasDialParams = new RASDIALPARAMS();
            rasDialParams.size = Marshal.SizeOf(rasDialParams);
            rasDialParams.entryName = pEntryName//是上个函数返回的连接名字“我的连接”
            rasDialParams.userName ="card"
            rasDialParams.password = "card";

            int lResult = RasDial(IntPtr.Zero, IntPtr.Zero, RASDIALPARAMS.ToBytes(rasDialParams), 0xFFFFFFFF, IntPtr.Zero, ref m_pRasSession);

            if (lResult != 0)
            {
                throw new Exception(string.Format("RasDial failed: Error {0}", lResult));
            }
           
        }

程序运行以后提示错误号是691.网上的691错误解释是:因为用户名和/或密码在此域上无效,所以访问被拒绝。那么是域没有设置吗,但是我不知道域是多少啊。代码本身有什么错误么?求救各位大侠了。
               
此帖出自WindowsCE论坛

最新回复

顶啊。  详情 回复 发表于 2009-10-18 17:15
点赞 关注
 

回复
举报

1

帖子

0

TA的资源

禁止访问

沙发
 
提示: 作者被禁止或删除 内容自动屏蔽
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
和域貌似没关系,拨号参数和AT命令是不是出错了
此帖出自WindowsCE论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

4
 
691错误,呵呵。上不去网的时候经常是这个错误。
此帖出自WindowsCE论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 
请问2楼,AT命令是什么呢?
此帖出自WindowsCE论坛
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

6
 
顶你,最近也再搞
此帖出自WindowsCE论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

7
 
自己顶
此帖出自WindowsCE论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

8
 
顶啊。
此帖出自WindowsCE论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表