void WriteToDriver( )
{
DWORD dwWritten;
TCHAR *tcString=L"Demo String...";
HANDLE hDrv=CreateFile(L"DEM1:",GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if (INVALID_HANDLE_VALUE == hDrv) {
OutputDebugString(L"Failed to open Driver...\n");
} else {
WriteFile(hDrv,(LPVOID)tcString,lstrlen(tcString)*sizeof(TCHAR),&dwWritten,NULL);
}
CloseHandle(hDrv);
}
void ReadFromDriver( )
{
DWORD dwRead;
TCHAR tcTemp[30];
HANDLE hDrv=CreateFile(L"DEM1:",GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if (INVALID_HANDLE_VALUE == hDrv) {
OutputDebugString(L"Failed to open Driver...\n");
} else {
memset(tcTemp,0x00,30*sizeof(TCHAR));
ReadFile(hDrv,tcTemp,30,&dwRead,NULL);
MessageBox(NULL,tcTemp,L"Demo Data",MB_OK);
}
CloseHandle(hDrv);
}
void HandleIOCTL( )
{
HANDLE hDrv=CreateFile(L"DEM1:",GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
TCHAR tcBuffer[10];
DWORD dwBytesReturned;
lstrcpy(tcBuffer,L"Hello");
BOOL bRet=DeviceIoControl(
hDrv,
IOCTL_DRIVER_DEMO,
tcBuffer,
lstrlen(tcBuffer)*sizeof(TCHAR),
tcBuffer,
lstrlen(tcBuffer)*sizeof(TCHAR),
&dwBytesReturned,
NULL);
MessageBox(NULL,tcBuffer,L"IOCTL Test",MB_OK);
CloseHandle(hDrv);
}