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

  • Live Event Date: October 29, 2014 @ 11:00 a.m. ET / 8:00 a.m. PT Are you interested in building a cognitive application using the power of IBM Watson? Need a platform that provides speed and ease for rapidly deploying this application? Join Chris Madison, Watson Solution Architect, as he walks through the process of building a Watson powered application on IBM Bluemix. Chris will talk about the new Watson Services just released on IBM bluemix, but more importantly he will do a step by step cognitive …

  • Live Event Date: October 29, 2014 @ 1:00 p.m. ET / 10:00 a.m. PT It's well understood how critical version control is for code. However, its importance to DevOps isn't always recognized. The 2014 DevOps Survey of Practice shows that one of the key predictors of DevOps success is putting all production environment artifacts into version control. In this eSeminar, Gene Kim will discuss these survey findings and will share woeful tales of artifact management gone wrong! Gene will also share examples of how …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds