谢谢99辈子求 几个函数的理解和重写!!(5通宵没明白我目前在做网络移植 (mobile 到 wince)下面的几个函数在 我自己定制的sdk里没有
ConnMgrEnumDestinations(nDestIdx, &oDestInfo)
ConnMgrReleaseConnection(m_hConnection, TRUE);
hResult = ::ConnMgrEstablishConnection(&oCnxInfo.m_oConnectionInfo, &hNetworkConnexion);
      hResult = ConnMgrProviderMessage((HANDLE)oCnxToken, &IID_ConnPrv_IProxyExtension, NULL, 0, 0, (PBYTE)&pcProxy, sizeof(pcProxy));    
ConnMgrConnectionStatus(hNetworkConnexion, &dwStatus);如何自己写几个函数 去替换掉上面的函数,并实现相应的功能,要求参数和返回值相同谢谢 怎么报答都行

解决方案 »

  1.   

    这几个函数是wince/windows moblie提供的GPRS相关的API,定义在系统DLL里,你是没办法替换的。
      

  2.   

    // 连接目标信息  
    // 参数第一个是int型,另外一个应该是结构体
    ConnMgrEnumDestinations(nDestIdx, &oDestInfo)// 大概是 释放一个连接的函数吧 
    // 第一个参数好像是个连接句柄,
    ConnMgrReleaseConnection(m_hConnection, TRUE);// 这个是确定连接是否有效的函数嘛? 第一个参数我猜应该是结构体, 第二个是个句柄
    // 返回一个句柄
    hResult = ::ConnMgrEstablishConnection(&oCnxInfo.m_oConnectionInfo, &hNetworkConnexion);// 不明白为啥返回值和上面的一样
    // 这个函数大概是获取连接进来的客户端信息的。
    // 第一个参数被强转成了句柄(oCnxToken是个什么类型啊),第二个参数好像MFC的句柄定义。。后面的不说了。。都能看明白
    hResult = ConnMgrProviderMessage((HANDLE)oCnxToken, &IID_ConnPrv_IProxyExtension, NULL, 0, 0, (PBYTE)&pcProxy, sizeof(pcProxy));   
    // 这个应该是获取连接状态的
    // 第一个参数是句柄。第二个是个DWORD
    ConnMgrConnectionStatus(hNetworkConnexion, &dwStatus);都是看函数命名和参数猜的...没做过GPRS开发,解释有错误请见谅。
    自己写函数替代的话,写代码试试吧,应该不是很难。
    只要能获取到连接句柄就行了。
    把连接信息封在一个结构体或者类中,接到连接的话就保存在map或者其他容器中。
    连接状态的话可以用引用计数。有连接是+1,无连接-1,只要判断 计数器是否为0 就知道该连接是否被使用,或者用其他函数可以获取到。