设为首页 加入收藏

TOP

用VC++制作拨号控件(四)
2013-09-26 19:36:30 来源: 作者: 【 】 浏览:436
Tags:制作 拨号 控件

 

  ---- 四、添加拨号库及头文件

  ---- 将rasapi32.lib 及 ras.h 加到工程项。

  ---- 五、添加控件属性

  ---- 我们要在控件中设置一些属性来实现应用程序与控件的传递参数及控制动作。在Class Wizard 的Automation 标签中 , Class name 项选中 CDialerCtrl ,单击 Add Property …按钮,按如下表增加控件属性:

  ---- 六、增加拨号及收线函数

  bool CDialerCtrl::DialUp(){  //拨号函数

  RASDIALPARAMS rdParams;

  rdParams.dwSize = sizeof(RASDIALPARAMS);

  lstrcpy( rdParams. szEntryName, m_netWorking);

  lstrcpy( rdParams.szPhoneNumber, m_phone);

  rdParams.szCallbackNumber[0] = ’’;

  lstrcpy( rdParams.szUserName, m_userName );

  lstrcpy( rdParams.szPassword, m_passWord );

  rdParams.szDomain[0] = ’*’;

  hRasConn = NULL;  //hRasConn

  为 HRASCONN 类型的变量;

  DWORD dwRet = RasDial( NULL, NULL,

  &rdParams, 0L, NULL, &hRasConn );

  if ( dwRet == 0 )  {m_message="OK!";

  m_returnCode = deRet; return true;}

  ……  //这里省去出错处理代码

  return false;

  }

  bool CDialerCtrl::HandUp(){ //收线函数

  DWORD dwRet = RasHangUp( hRasConn );

  ……  //这里省去出错处理代码

  return true;

  }

  ---- 七、增加动作函数

  ---- 控件的Action 的值一有改变将自动运行该函数,Action 有两个动作:1.拨号 2.收线。

  void CXiaXinDialCtrl::OnActionChanged() {

  // TODO: Add notification handler code

  if (m_action==1) DialUp();    //调用拨号函数

  if (m_action==2) HandUp();    //调用收线函数

  SetModifiedFlag();

  }

  ---- 八、编译,链接,自动注册

  ---- 启动VC++的建立(build)动作,将实行编译,链接生成Dialer.ocx 并自动注册到本机。这时您可以启动VB 开发平台打开 Components 就可以看到刚注册的 Dialer ActiveX Control Module 。

  ---- 九、VB 的调用方法

  ---- 在VB的开发中,您可以和通用的控件一样使用Dialer.ocx。调用方法如下:

  Private Sub Command1_Click()

  Dialer1.NetWorking = Text1.Text

  Dialer1.UserName = Text2.Text

  Dialer1.PassWord = Text3.Text

  Dialer1.Phone = Text4.Text

  Label5.Caption = "正在拨号..."

  Dialer1.Action = 1

  Labe15.Caption = Dialer1.Message

  ’ 如果接通 窗口最小化

  If XiaXinDial1.ReturnCode =

  0 Then Form1.WindowState = 1

  End Sub

      

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 4/9/9
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇如何用VC实现软件注册 下一篇VC??????????????С????

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: