device.h

来自「设备管理程序」· C头文件 代码 · 共 74 行

H
74
字号
#pragma once

#include "DeviceInterface.h"
#include <list>

#define DEV_BLUETOOTH  2      // 蓝牙
#define DEV_CDROM      4      // CDROM
#define DEV_DISPLAY    8      // 显示卡
#define DEV_FLOPPY     16     // 软件驱
#define DEV_INFRARED   32     // 红外
#define DEV_KEYBOARD   64     // 键盘
#define DEV_MEDIAD     128    // 声卡
#define DEV_MODEM      256    // MODEM
#define DEV_MOUSE      512    // 鼠标
#define DEV_NET        1024   // 网卡
#define DEV_PRINT      2048   // 打印机
#define DEV_PORT       4096   // 端口
#define DEV_USB        8192   // USB

using namespace std;

class CDeviceCtrl
{
public:
	virtual ~CDeviceCtrl(void){};
     // 启用设备
	virtual VOID EnableDevice( ULONG ) = 0;
	// 禁用设备
	virtual VOID DisableDevice( ULONG ) = 0; 
	// 启动临视
	virtual BOOL Run() = 0;   
	// 退出
	virtual VOID Exit() = 0;
};

class CDevice : public CDeviceCtrl
{
public:
	CDevice(VOID);
	~CDevice(VOID);

	VOID EnableDevice( ULONG ); // 启用设备
	VOID DisableDevice( ULONG ); // 禁用设备
	BOOL Run();                  // 启动临视
	VOID Exit(){PostQuitMessage(0);}
private:
	VOID Clear( VOID );
	VOID DeviceChang( ULONG, BOOL );
	 // 枚举设备
	BOOL EnumDevice( GUID, BOOL = TRUE );
	// 设置线程时间
	VOID SetDeviceRefreshInterval( UINT = 10 * 1000 );

	VOID CheckChange( VOID );    // 检测设备
	VOID CheckSet();             // 开始检测
	static unsigned __stdcall ThreadFunc( LPVOID lpParam );

	friend LRESULT CALLBACK WndProc(
						 HWND hwnd,		// handle to window
						 UINT uMsg,		// message identifier
						 WPARAM wParam, // First message parameter
						 LPARAM lParam);// second message parameter
private:
	list<CDeviceInterface*> m_DevInter;
	UINT_PTR  hTimer;
	ULONG     m_EnableDev;  // 启用设备的序号
	ULONG     m_DisableDev; // 禁用设备的序号
	HANDLE    m_hThread;
	HWND      hWndMain;
};
extern CDevice * g_device;
extern HINSTANCE hAppInstance;

BOOL GetUSBDiskID( CHAR cDiskID, LPSTR lpPID );

⌨️ 快捷键说明

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