#include "stdafx.h"
#include "ras.h"
#include "stdio.h"HANDLE hPort = INVALID_HANDLE_VALUE;
HRASCONN hRasConn = NULL;
BOOL CreatePort()
{
DWORD dwNumBytesWritten;
BOOL fRet;
BYTE Bytes[]={'A','T','+','C','G','D','C','O','N','T','=','1',',','"','I','P','"',',','"','C','M','N','E','T','"',0x0D,'A','T','D','T','*','9','9','#',0x0D};
//open the serial port
hPort = CreateFile(TEXT("COM8:"),GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);
if ( hPort == INVALID_HANDLE_VALUE )
{
// Could not open the port.
//printf("Open the serial port failed\n\r");
return FALSE;
}
//BYTE Bytes[]={'A','T',0x0D};
//DWORD CgdcontSize = sizeof(Cgdcont);
DWORD BytesSize = sizeof(Bytes);
//fRet = WriteFile(hPort,Cgdcont,CgdcontSize, &dwNumBytesWritten,NULL);
fRet = WriteFile(hPort,Bytes,BytesSize, &dwNumBytesWritten,NULL);
fRet = ReadFile(hPort,Bytes,4,&dwNumBytesWritten,NULL);
if(fRet)
{
//printf("open the serial port successful \n\r");
CloseHandle(hPort);
}
else
{
//close the serial port
CloseHandle(hPort);
//printf("Close serial port successful\n\r");
} return TRUE; } LRESULT CALLBACK WndProc (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
{
RASCONNSTATE RasState = (RASCONNSTATE)wParam;
switch(Msg)
{
case WM_RASDIALEVENT:
switch(RasState)
{
case RASCS_OpenPort:
printf("正在打开端口\n\r");
break;
case RASCS_PortOpened:
printf("端口已经打开\n\r");
break;
case RASCS_ConnectDevice:
printf("正在连接设备\n\r");
break;
case RASCS_Connected:
//int i;
//printf("已连接\n\r");
//scanf("%d",i);
//if(i==1)
//{
// RasHangUp(hRasConn);
//}
break;
case RASCS_Disconnected:
printf("连接已断开\n\r");
break;
default:
printf("未知\n\r");
break;
}
break;
default:
return DefWindowProc(hWnd, Msg, wParam, lParam);
}
return TRUE;
} int WINAPI WinMain( HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
// TODO: Place code here.
HWND hwnd;
MSG msg;
WNDCLASS wc;
wc.style = 0;
wc.lpfnWndProc = (WNDPROC)WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = 0;
wc.hCursor = 0;
wc.hbrBackground = NULL;
wc.lpszMenuName = 0;
wc.lpszClassName = _T("embo"); RegisterClass(&wc); hwnd = CreateWindow(_T("embo"),_T("EmboConnection"),0,0,0,0,0,NULL,NULL,hInstance,NULL); ShowWindow(hwnd,0); CreatePort(); RASDIALPARAMS rdParams;//拨号参数 //初始化拨号参数
rdParams.dwSize=sizeof(RASDIALPARAMSW);
wcscpy(rdParams.szEntryName,_T("Embo Connection"));
wcscpy(rdParams.szPhoneNumber,_T(""));
wcscpy(rdParams.szCallbackNumber,_T(""));
wcscpy(rdParams.szUserName,_T(""));
wcscpy(rdParams.szPassword,_T(""));
wcscpy(rdParams.szDomain,_T(""));
DWORD dwRet;
//拨号连接
//printf("connecting \n\r");
dwRet = RasDial(NULL,NULL,&rdParams,0xFFFFFFFF,hwnd ,&hRasConn); if(dwRet != 0)//connection successful
{
RasHangUp(hRasConn);
} while ( GetMessage(&msg, NULL, 0, 0) != FALSE )
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
#include "ras.h"
#include "stdio.h"HANDLE hPort = INVALID_HANDLE_VALUE;
HRASCONN hRasConn = NULL;
BOOL CreatePort()
{
DWORD dwNumBytesWritten;
BOOL fRet;
BYTE Bytes[]={'A','T','+','C','G','D','C','O','N','T','=','1',',','"','I','P','"',',','"','C','M','N','E','T','"',0x0D,'A','T','D','T','*','9','9','#',0x0D};
//open the serial port
hPort = CreateFile(TEXT("COM8:"),GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);
if ( hPort == INVALID_HANDLE_VALUE )
{
// Could not open the port.
//printf("Open the serial port failed\n\r");
return FALSE;
}
//BYTE Bytes[]={'A','T',0x0D};
//DWORD CgdcontSize = sizeof(Cgdcont);
DWORD BytesSize = sizeof(Bytes);
//fRet = WriteFile(hPort,Cgdcont,CgdcontSize, &dwNumBytesWritten,NULL);
fRet = WriteFile(hPort,Bytes,BytesSize, &dwNumBytesWritten,NULL);
fRet = ReadFile(hPort,Bytes,4,&dwNumBytesWritten,NULL);
if(fRet)
{
//printf("open the serial port successful \n\r");
CloseHandle(hPort);
}
else
{
//close the serial port
CloseHandle(hPort);
//printf("Close serial port successful\n\r");
} return TRUE; } LRESULT CALLBACK WndProc (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
{
RASCONNSTATE RasState = (RASCONNSTATE)wParam;
switch(Msg)
{
case WM_RASDIALEVENT:
switch(RasState)
{
case RASCS_OpenPort:
printf("正在打开端口\n\r");
break;
case RASCS_PortOpened:
printf("端口已经打开\n\r");
break;
case RASCS_ConnectDevice:
printf("正在连接设备\n\r");
break;
case RASCS_Connected:
//int i;
//printf("已连接\n\r");
//scanf("%d",i);
//if(i==1)
//{
// RasHangUp(hRasConn);
//}
break;
case RASCS_Disconnected:
printf("连接已断开\n\r");
break;
default:
printf("未知\n\r");
break;
}
break;
default:
return DefWindowProc(hWnd, Msg, wParam, lParam);
}
return TRUE;
} int WINAPI WinMain( HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
// TODO: Place code here.
HWND hwnd;
MSG msg;
WNDCLASS wc;
wc.style = 0;
wc.lpfnWndProc = (WNDPROC)WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = 0;
wc.hCursor = 0;
wc.hbrBackground = NULL;
wc.lpszMenuName = 0;
wc.lpszClassName = _T("embo"); RegisterClass(&wc); hwnd = CreateWindow(_T("embo"),_T("EmboConnection"),0,0,0,0,0,NULL,NULL,hInstance,NULL); ShowWindow(hwnd,0); CreatePort(); RASDIALPARAMS rdParams;//拨号参数 //初始化拨号参数
rdParams.dwSize=sizeof(RASDIALPARAMSW);
wcscpy(rdParams.szEntryName,_T("Embo Connection"));
wcscpy(rdParams.szPhoneNumber,_T(""));
wcscpy(rdParams.szCallbackNumber,_T(""));
wcscpy(rdParams.szUserName,_T(""));
wcscpy(rdParams.szPassword,_T(""));
wcscpy(rdParams.szDomain,_T(""));
DWORD dwRet;
//拨号连接
//printf("connecting \n\r");
dwRet = RasDial(NULL,NULL,&rdParams,0xFFFFFFFF,hwnd ,&hRasConn); if(dwRet != 0)//connection successful
{
RasHangUp(hRasConn);
} while ( GetMessage(&msg, NULL, 0, 0) != FALSE )
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
解决方案 »
- Bitmap修改bmBits的值
- vs 2010 怎么改单个按扭字体大小
- 高手入:CFile操作不报错,却不成功?
- 简体系统中,vs2003做的mfc程序,“使用多字节字符集”,到了繁体操作系统内运行字符全部乱码?如何解决呢?
- 如何以文本形式打开一个非文本文件
- CString的TrimRight()和Right()函数的疑问
- 【热烈庆祝网龙升4个三角,都来捧场】这可是我全部的家当
- 能推荐一个C++代码阅读器吗?
- 字符串比较忽视大小写
- 急急急!!!各位大虾,怎样用vc编写一个打开pointpower文件的程序?
- 怎么修改CSDN用户邮箱
- 做一个透明窗体,只是让窗体内部透明,而窗体的边框可以设置颜色、粗细,如何实现?
头文件的错误
连接的时候就变成
HRASCONN hRasConn = NULL;
这条句柄的错误了