Dial-Up connection

Environment: VC6.0 Win98

Hi all,

There is a code for Dial-Up connection. Aleksander Mikula had already posted his code for disconnecting dial-up connection. This is other part od same problem (accessing internet via phone line). This task can be done by using CInternetSession::GetFtpConnection() function for example, but only if all parameters in dial-up dialog are present (and then you don't set username, password and phone number programaticaly).

For using this function you must include "ras.h" and "raserror.h" header files and link with rasapi32.lib.

bool  DialUp() 
{    
	RASDIALPARAMS rdParams;
    	rdParams.dwSize = sizeof(RASDIALPARAMS);    
	rdParams.szEntryName[0] = '\0';
    	lstrcpy( rdParams.szPhoneNumber, szPhoneNumberToDial );
    	rdParams.szCallbackNumber[0] = '\0';
    	lstrcpy( rdParams.szUserName, szUserName );
    	lstrcpy( rdParams.szPassword, szPassword );    
	rdParams.szDomain[0] = '\0';
    	HRASCONN hRasConn = NULL;
    	DWORD dwRet = RasDial( NULL, NULL, &rdParams, 0L, NULL, &hRasConn );
    	if ( dwRet == 0 )  
		return true;    
	char  szBuf[256];
	if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
        	wsprintf( (LPSTR)szBuf, "Undefined RAS Dial Error (%ld).", dwRet );
    	RasHangUp( hRasConn );
    	AfxMessageBox( NULL, (LPSTR)szBuf, "Error", MB_OK | MB_ICONSTOP );
    	return false;
}


Note that here I'm using sinhrone version (five parameter of RasDial() is NULL). Updated version can use pointer to RasDialFunc() function instead, and then RasDial() returns immediately and calls RasDialFunc() when WM_RASDIALEVENT is occur.

Download demo project - 10KB



Comments

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Companies undertaking an IT project need to find the right balance between cost and functionality. It's important to start by determining whether to build a solution from scratch, buy an out-of-the-box solution, or a combination of both. In reality, most projects will require some system tailoring to meet business requirements. Decision-makers must understand how much software development is enough and craft a detailed implementation plan to ensure the project's success. This white paper examines the different …

  • On-demand Event Event Date: February 12, 2015 The evolution of systems engineering with the SysML modeling language has resulted in improved requirements specification, better architectural definition, and better hand-off to downstream engineering. Agile methods have proven successful in the software domain, but how can these methods be applied to systems engineering? Check out this webcast and join Bruce Powel Douglass, author of Real-Time Agility, as he discusses how agile methods have had a tremendous …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date