背景:程序升级64位后,运行报错:创建空文档失败。
解决思路:
1、出现《创建空文档失败》报错,基本问题可以锁定到某个类的构造函数没有正常返回造成的。具体哪个类,就要看创建了哪些类的对象,在这些类中去找。
2、在类的构造函数中找到崩溃的位置,原来是打开数据库失败,(提醒:对数据库操作时最好要加try…catch,不解释原因了)。
分析:
1、根据报错,首先想到的就是缺少dll,网上查了,dll是共用的。排除这个原因。
2、网上查了资料,貌似微软建议我们用32位的而不是64位的,所以默认只有32位的。
3、进入数据源管理程序对比,发现64位的根本就没有access数据源的驱动。网上下一个64位驱动,安装。驱动连接地址
4、安装完成后,可以看到已经多出来了驱动程序。
5、再次运行64位程序,依旧会报一样的错误,在这里有点蒙了,驱动已经装好了,为啥还不行?仔细看报错:未发现数据源名称并且未指定默认驱动程序。
6、既然驱动装好了,那就看看数据源名称,发现这个数据源平台还是32位,那就增加个64位平台的数据源试试,结果问题解决了。
碰到这类问题,稍不注意就会把自己搞崩溃,所以记录下供大家参考,希望对你有帮助。