新手上道,接到一个任务,用C++操作word,将用户提供的数据库数据填入对应的word模板中但是本人是搞android的,所以对原来的要求头疼了一段时间,然后实在没办法,最后向经理申请用java来实现,最后在打包成exe文件。
首先需要解决的问题就是,java如何操作word, 这里我找啊找,找到了一个java2wrod的第三方jar
下来就要操作数据库,找到了一个sqlite-jdbc4-3.8.2-SNAPSHOT.jar的第三方包
后来执行的时候需要修改环境变量中的用户变量,(也就是操作word缓存的目录吧,也不懂为啥要把目录改成Temp C:\WINDOWS\Temp 和 Tmp C:\WINDOWS\Temp)
使用java2word时,需要将jacob.dll拷贝到...system32目录下。
修改环境变量时,经理要求不让用户手动修改,必须用代码修改,这下问题又来了,我就在网上找方法,因为java是不能操作底层注册表的,所以我找到了一个registry.jar的第三方jar包,这个也需要把 ICE_JNIRegistry.dll文件拷贝到......ststem32目录下.
这下基本就可以完成了,下来就是操作将可运行的jar转换成exe文件。用到的有 exe4j或者Jsmooth,或者java转换工厂好像是这个名字,忘了。
这几个的优缺点说下
前两个是需要电脑有jdk环境的,exe4j转换的exe可能会出现 main class not load 这个错误
最后一个工厂转换的exe是把jar中使用的jre环境给简化了,顺便一同打包。所以可以不需要jdk环境。
把曾经 做过的 ,记录下来,以备后用。