⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vxdhelper.cpp

📁 一本在讲述USB驱动程式的书 及其范例原码
💻 CPP
字号:
// VxdHelper.cpp -- Implementation of CVxdHelper class
// Copyright (C) 1999 by Walter Oney
// All rights reserved

#include "stdafx.h"
#include "VxdHelper.h"

///////////////////////////////////////////////////////////////////////////////

CVxdHelper::CVxdHelper()
	{							// CVxdHelper::CVxdHelper
	m_hdriver = INVALID_HANDLE_VALUE;
	}							// CVxdHelper::CVxdHelper

CVxdHelper::~CVxdHelper()
	{							// CVxdHelper::~CVxdHelper
	if (m_hdriver != INVALID_HANDLE_VALUE)
		{						// close handle to driver
		CloseHandle(m_hdriver);
		m_hdriver = INVALID_HANDLE_VALUE;
		}						// close handle to driver
	}							// CVxdHelper::~CVxdHelper

///////////////////////////////////////////////////////////////////////////////

BOOL CVxdHelper::Initialize(LPCTSTR name)
	{							// CVxdHelper::Initialize
	TCHAR devname[_MAX_PATH];
	_tcscpy(devname, _T("\\\\.\\"));
	_tcscat(devname, name);

	m_hdriver = CreateFile(devname, GENERIC_READ | GENERIC_WRITE, 0,
		NULL, OPEN_EXISTING, 0, NULL);

	if (m_hdriver == INVALID_HANDLE_VALUE)
		{						// try to dynamically load VxD
		_tcscat(devname, _T(".vxd"));
		m_hdriver = CreateFile(devname, 0, 0, NULL, 0, FILE_FLAG_DELETE_ON_CLOSE, NULL);
		}						// try to dynamically load VxD

	if (m_hdriver == INVALID_HANDLE_VALUE)
		return FALSE;

	return TRUE;
	}							// CVxdHelper::Initialize

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -