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

📄 tvichw32.odl

📁 《Delphi5企业级解决方案及应用剖析》参考程序 DELPHI 资料集
💻 ODL
字号:
// TVicHW32.odl : type library source for ActiveX Control project.

// This file will be processed by the Make Type Library (mktyplib) tool to
// produce the type library (TVicHW32.tlb) that will become a resource in
// TVicHW32.ocx.

#include <olectl.h>
#include <idispids.h>

[ uuid(0EAC1563-1FEB-11D2-B035-00A0C9184FF9), version(1.0),
  helpfile("TVicHW32.hlp"),
  helpstring("TVicHW32 ActiveX Control module"),
  control ]
library TVICHW32Lib
{
	importlib(STDOLE_TLB);
	importlib(STDTYPE_TLB);

	//  Primary dispatch interface for CTVicHW32Ctrl

	[ uuid(0EAC1564-1FEB-11D2-B035-00A0C9184FF9),
	  helpstring("Dispatch interface for TVicHW32 Control"), hidden ]
	dispinterface _DTVicHW32
	{
		properties:
			// NOTE - ClassWizard will maintain property information here.
			//    Use extreme caution when editing this section.
			//{{AFX_ODL_PROP(CTVicHW32Ctrl)
			[id(1)] boolean HardAccess;
			[id(2)] short LPTNumber;
			[id(3)] boolean IRQMasked;
			[id(4)] short IRQNumber;
			[id(5)] short LPTNumPorts;
			[id(6)] short LPTBasePort;
			[id(7)] boolean LPTAckwl;
			[id(8)] boolean LPTBusy;
			[id(9)] boolean LPTPaperEnd;
			[id(10)] boolean LPTSlct;
			[id(11)] boolean LPTError;
			[id(12)] boolean ActiveHW;
			[id(13)] short MappedAreas;
			//}}AFX_ODL_PROP

		methods:
			// NOTE - ClassWizard will maintain method information here.
			//    Use extreme caution when editing this section.
			//{{AFX_ODL_METHOD(CTVicHW32Ctrl)
			[id(14)] void CloseDriver();
			[id(15)] boolean OpenDriver();
			[id(24), propget] short Port(short PortAddr);
			[id(24), propput] void Port(short PortAddr, short nNewValue);
			[id(25), propget] short PortW(short PortAddr);
			[id(25), propput] void PortW(short PortAddr, short nNewValue);
			[id(26), propget] long PortL(short PortAddr);
			[id(26), propput] void PortL(short PortAddr, long nNewValue);
			[id(16)] long MapPhysToLinear(long PhAddr, long PhSize);
			[id(17)] void UnmapMemory(long PhAddr, long PhSize);
			[id(18)] void LPTStrobe();
			[id(19)] void LPTAutofd(boolean Flag);
			[id(20)] void LPTInit();
			[id(21)] void LPTSlctIn();
			[id(22)] boolean LPTPrintChar(short ch);
			[id(27), propget] boolean Pin(short nPin);
			[id(27), propput] void Pin(short nPin, boolean bNewValue);
			[id(28), propget] short Mem(long MappedAddr, long Offset);
			[id(28), propput] void Mem(long MappedAddr, long Offset, short nNewValue);
			[id(29), propget] short MemW(long MappedAddr, long Offset);
			[id(29), propput] void MemW(long MappedAddr, long Offset, short nNewValue);
			[id(30), propget] long MemL(long MappedAddr, long Offset);
			[id(30), propput] void MemL(long MappedAddr, long Offset, long nNewValue);
			[id(23)] long DebugCode();
			//}}AFX_ODL_METHOD
	};

	//  Event dispatch interface for CTVicHW32Ctrl

	[ uuid(0EAC1565-1FEB-11D2-B035-00A0C9184FF9),
	  helpstring("Event interface for TVicHW32 Control") ]
	dispinterface _DTVicHW32Events
	{
		properties:
			//  Event interface has no properties

		methods:
			// NOTE - ClassWizard will maintain event information here.
			//    Use extreme caution when editing this section.
			//{{AFX_ODL_EVENT(CTVicHW32Ctrl)
			[id(1)] void OnHwInterrupt(long HwCounter, short LPT_DataReg, short LPT_StatusReg, short ScanCode);
			//}}AFX_ODL_EVENT
	};

	//  Class information for CTVicHW32Ctrl

	[ uuid(647EF20D-1FD2-11D2-B035-00A0C9184FF9),
	  helpstring("TVicHW32 Control"), control ]
	coclass TVicHW32
	{
		[default] dispinterface _DTVicHW32;
		[default, source] dispinterface _DTVicHW32Events;
	};


	//{{AFX_APPEND_ODL}}
	//}}AFX_APPEND_ODL}}
};

⌨️ 快捷键说明

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