日期:2014-05-16  浏览次数:21044 次

access转mde的一个疑问?
手头有一个做好的access项目,要把它转成mde文件发到客户端使用,因为其中要涉及到一些控件的引用,所以在VBA里代码让它自动添加引用(默认的mdb文件是没有这个引用的,到客户端打开窗体时再添加引用)。但在转化mde文件时失败,原因是那个mdb文件中要定义一个对象,这个对象是基于这个控件引用的,编译时就提示我找不到不能识别这个对象。这样不就前后矛盾了,怎么解决这个矛盾?不知道我讲清楚没有,就是我在mdb文件vba代码中要引用一个控件的dll文件,但又不想直接建立好引用,但编译时的时候就通不过,转不成mde。这个怎么好呢?

------解决方案--------------------
没有 办法,将控件与MDE一起分发
------解决方案--------------------
没有办法。
建议不要用外部控件。会导致很多问题。.
------解决方案--------------------
自动添加引用在MDE中行不通。因为转换为MDE的时候,代码经过编译,
在MDE中已经是二进制代码了。而且ACCESS的引用是固定全路径引用,
MDE执行的时候,引用的控件必须和转换为MDE的时候路径完全一致。
因此,可以这样:
1,手动添加所有的控件引用,然后转换为MDE;
2,客户端使用时把所有的控件拷贝到固定的路径,并注册控件。

 或者用.Net制作一个安装程序,自动分发、注册。