用VC++實現上網撥號功能 (轉)

worldblog發表於2007-12-06
用VC++實現上網撥號功能 (轉)[@more@] 

用VC++實現上網撥號功能

大連捷通技術有限公司
陳珏

---- 現在的時代是的時代,網路應用的應用越來越廣泛,在自己設計的應用程式中實現直接撥號上網,給應用程式的使用者帶了很多方便,本應用程式就是在中文95操作上,用VC++5.0開發的實現撥號上網的一個小程式,希望能對大家有所幫助。下面是實現這一功能的源程式:

---- 首先建立一個以對話方塊為主的VC++工程,以下是本應用程式用的對話方塊(圖略)

---- 然後在對話方塊這個類的頭中加入幾個新定義:

public: void SetupDialupCombo(void); protected: //{{AFX_MSG(CDialprocDlg) virtual BOOL OnInitDialog(); afx_msg void OnConnectbutton(); //響應對話方塊中BUTTON按鈕“接續”的事件 afx_msg void OnSelchangeDialupCombo(); //響應對話中COMBO選擇改變的事件 //}}AFX_MSG


---- 以下是在對話方塊這個類的原始檔中加入新定義函式的功能:別忘了在標頭檔案中加入#include 這個標頭檔案,以及在Settings中的Link中的LibraryModules加入ras32.lib.

void CDialprocDlg::SetupDialupCombo() { m_DialCombo.ResetContent(); //m_DialCombo是對話方塊中Combox控制元件的命名 D n; DWORD dwSize=0; //列舉出本地電腦中的所有撥號連線。 DWORD ret=RasEnumEntries (NULL, NULL, NULL, &dwSize,&n); n=dwSize/sizeof(RASENTRYNAME); RASENTRYNAME *entry=new RASENTRYNAME[n]; if (entry) { entry[0].dwSize=sizeof(RASENTRYNAME); DWORD ret=RasEnumEntries (NULL, NULL, entry, &dwSize,&n); for (DWORD i=0;iSCONN handle; 指定的撥號連線。 (RasDial(NULL, ¶ms, NULL, &handle)="=0)" MessageBox(?已聯接,如果按“確定”就會切斷電話?); else MessageBox(?正在撥打的沒有應答,稍後請再試?); wait.Restore(); RasHangUp(handle); } void CDialprocDlg::OnSelchangeDialupCombo() { RASDIALPARAMS params; memset(¶ms, ??,sizeof(params)); params.dwSize="sizeof(params);" int sel="m_DialCombo.GetCurSel();" if (sel>=0) { m_DialCombo.GetLBText(sel, params.szEntryName); TRACE("%sn",params.szEntryName); BOOL p; RasGetEntryDialParams(NULL, &params, &p); m_UserId.SetWindowText(params.szUserName); m_PasswordEdit.SetWindowText(params.szPassword); } } BOOL CDialprocDlg::OnInitDialog() {CDialog::OnInitDialog(); SetupDialupCombo(); return TRUE; // return TRUE unless you set the focus to a control }


---- 這個應用程式在中文95下,在VC++5.0上開發、編譯、執行透過的。

 


 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-988845/,如需轉載,請註明出處,否則將追究法律責任。

相關文章