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

📄 directio.h

📁 这是一本学习 window编程的很好的参考教材
💻 H
字号:
// DirectIO.h : CDirectIO 的声明

#pragma once
#include "resource.h"       // 主符号

#include "NTPort.h"

#include "TDriver.h"

// CDirectIO

class ATL_NO_VTABLE CDirectIO : 
	public CComObjectRootEx<CComSingleThreadModel>,
	public CComCoClass<CDirectIO, &CLSID_DirectIO>,
	public IDispatchImpl<IDirectIO, &IID_IDirectIO, &LIBID_NTPortLib, /*wMajor =*/ 1, /*wMinor =*/ 0>
{
public:
	CDirectIO()
	{
	}

DECLARE_REGISTRY_RESOURCEID(IDR_DIRECTIO)


BEGIN_COM_MAP(CDirectIO)
	COM_INTERFACE_ENTRY(IDirectIO)
	COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()


	DECLARE_PROTECT_FINAL_CONSTRUCT()

	HRESULT FinalConstruct()
	{

		sc.init("ZNtPort");
		return S_OK;
	}
	
	void FinalRelease() 
	{
	}
public:
	STDMETHOD(GetIDsOfNames)(
		GUID* riid, 
		OLECHAR** rgszNames, 
		unsigned int cNames, 
		unsigned long lcid, 
		long* rgdispid);
	STDMETHOD(Invoke)(DISPID dispidMember,REFIID riid, LCID lcid, WORD wFlags,
		DISPPARAMS * pdispparams, VARIANT * pvarResult,
		EXCEPINFO * pexcepinfo, UINT * puArgErr);
public:

	STDMETHOD(In)(VARIANT vPort, VARIANT* pVal);
	STDMETHOD(Out)(VARIANT vPort, VARIANT vVal);
	STDMETHOD(EnablePorts)(VARIANT vPortStart, VARIANT vEnableNum);
	STDMETHOD(DisablePorts)(VARIANT vPortStart, VARIANT vDisableNum);
private:
	CServiceControl sc;
};

OBJECT_ENTRY_AUTO(__uuidof(DirectIO), CDirectIO)

⌨️ 快捷键说明

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