回 帖 发 新 帖 刷新版面

主题:为什么我的程序安装后不能与数据库连接?

我做好了一个程序,该程序要访问一个.mdb的access数据库文件,我用installshield express5.0做好的安装包,装到别人机器上后,从开始菜单的快捷方式打开,会提示:数据库连接失败,请确认.mdb是否在当前目录下!
但是直接运行安装路径下的可执行文件就正常!
请问是不是因为我没有修改注册表,即将应用程序向系统注册,所以从开始菜单打开就找不到安装路径?如果是这样,那在制作安装包的时候需要向注册表添加什么键值呢?谢谢!

回复列表 (共2个回复)

沙发

连接数据库的语句我是这么写的:(注:jj.mdb是我的数据库文件,该数据库文件和程序所在路径一样)
try                 
    {    
        // 打开本地Access库jj.mdb
        m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;[u]Data Source=jj.mdb[/u]","","",adModeUnknown);
        
    }
    catch(_com_error e)
    {
        AfxMessageBox("数据库连接失败,确认数据库jj.mdb是否在当前路径下!");
        return FALSE;
    } 
我的问题是:在把我的应用程序安装到目标机后,在目标机的安装路径下运行该程序,可以和数据库连接,但是从目标机的开始菜单用快捷方式来激活应用程序时,则不能和数据库连接,这是什么原因?

板凳

:P 问题已经解决!
原因是:没有设定快捷方式的起始位置(working path),即快捷方式-属性-起始位置 不能为空。
方法:Installshield工具提供了对该选项的设置,在shortcut设置页面,工作路径选项,只需将该项设置为数据库和.exe所在目录即可。
哈哈,谢谢各位的关注!

我来回复

您尚未登录,请登录后再回复。点此登录或注册