我要设计一个动态库,动态库的功能是打印设备控制函数的封装,对设备的控制都是通过句柄进行的,以前的版本仅仅支持一台设备,所以只需要在动态库内部记录并使用这个句柄就可以,现在要求对这个库进行升级,要求支持多个设备,求助有没有一个比较好的方法实现多台?
之前考虑用链表或数组存储这些句柄,在动态库的每个接口函数调用的时候都输入这个句柄作为参数。
例如当前的一个函数例子,设置打印模式的函数,声明是这样的:
SetMode(HANDLE hPort, int nPortType, int nPrintMode)
设备是通过不同的端口进行通讯的,每个函数都带有hPort和nPortType两个参数来区分多台和不同的端口类型。但考虑这种方法使用起来不是很方便,所以放弃了。需要一个易用且稳定的方式来实现这种功能,分数不多,还望各位给予指导。
谢谢。