zzlufida / CSharpU8

一个快速生成U8相关COM组件Interop的工程,用于给C#语言进行调用,包括控件
Other
28 stars 19 forks source link

CSharpU8

一个快速生成U8相关COM Interop的工程,用于给C#语言进行调用,包括控件 具体的技术细节在这篇博客中已经介绍了,这里不再重复 https://blog.csdn.net/zzlufida/article/details/81056123

文件基本信息

工具会把每一个COM组件产生的Interop文件, 生成到一个文件夹下面,文件夹的名称正好和COM组件名称一致,但是为了看到顺序,我在名字前面故意加上了顺序编号,例如00COMMON,01UAPVouchControl85等等.

过程中工具主要调用ZTlbImp2来生成Interop的DLL,然后调用ZAxImp来生成控件的AxHost包装类源码文件.并在最后将所有生成好的文件统一放在一个叫做Target的文件夹下面,换言之这里面存储了整个生成过程的结果,其余文件夹都是过程中的部分结果.例如00文件夹和01文件夹加起来所有的文件正好等于Target,这样做的目的是为了调试方便(每一步都去看编码文件夹),最后拿到结果也方便(直接去Target).

最后需要手工使用ILMergeGUI_Portable.exe工具进行DLL合并,如果不合并也可以使用,合并仅仅是为了引用方便.发版的时候只要一个DLL文件就可以了.合并的过程也不复杂,把软件打开,然后从Target目录中拖拽你想要合并的DLL文件,别的选项都不要改,直接合并就好了.

默认情况下,都生成哪些COM组件

默认情况下,工具生成的COM组件包括:

文件名 描述
ADODBV28.dll ADODB 2.8版本 对应msado28.tlb
UAPvouchercontrol85 U8单据控件
u8vouchlist U8单据列表控件
U8RefEdit U8参照控件 带文本框编辑功能
UFGeneralFilterOCX U8过滤控件
voucherco_sa 销售模块CO类,API调用的关键类
PrintControl U8打印控件
US_Pz 凭证组件 这个用处不是很大
ReferMakeVouch 这个我也不清楚,仅仅是测试用