hur.cn - 华软网

 热门搜索

问一个数据库连接的问题。

  作者:未知    来源:网络    更新时间:2017/12/5
新人,连接数据库的时候用access数据库,我得先用windows的odbc数据源管理器先建立一个数据源,然后在在pb里面连接这个数据源,做完程序拿到别人的机器上的时候还得在别的机器上先建立一个同名的数据源,还不能改数据库的位置才能运行,用电话教用程序的人还说不明白,自己感觉也是太笨了,请问怎么能够让谅解数据库的工作做到把数据库和别的什么dll文件还有生成的exe程序文件放在一个文件夹里,能不能做到把这个文件夹直接copy到别的机器上的任意位置,不用手动建立数据源直接就可以运行!
   能不能说的稍微详细一点,谢谢谢谢各位老大!!!
------华软网友回答------
这个就要做安装程序了,用INSTALLSHIELD一类的工具软件,真要做得好还不是一般的复杂呢
------华软网友回复------
up
------华软网友回复------
主要的工作是注册表的设置,

你所做的ODBC配置都是注册表生成的过程
------华软网友回复------
可是我看别的程序安装后再odbc管理器里没看见新的数据原呀
------华软网友回复------
很简单,在程序里注册数据源就行了
------华软网友回复------
例如:
Registryset("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\XSGL", "Driver",RegString!,gs_AppPath + "\dbodbc8.dll")

这样就行了
------华软网友回复------
我的是asa,你的应该先手动注册一个,然后去注册表看ODBC.ini对应的数据源名,看了就知道程序里应该怎么写了,就这么简单!
------华软网友回复------
在请问一下,操作系统不同的话,系统文件夹的目录应该也是不同的,应该怎么得到系统文件夹的目录呀,
还有,用这种方式的不是每次运行程序都需要注册一次数据源吗,这样会不会影响速度呀?
------华软网友回复------
1.系统文件夹有api的 .
2.你可以先找找有没有这个键啊,有了就可以不注册了,其实每次注册也很快的.
------华软网友回复------
我给你讲清除点嘛,今天有点闲:)

声明:

FUNCTION uint GetWindowsDirectoryA(REF string lpBuffer,uint uSize) LIBRARY "KERNEL32.DLL"
FUNCTION uint GetSystemDirectoryA(REF string lpBuffer,uint uSize) LIBRARY "KERNEL32.DLL"


调用:

GetSystemDirectoryA(gs_system_dir,256)
GetWindowsDirectoryA(gs_windows_dir,256)

要谢我哟:)

------华软网友回复------
老大,我何止要谢谢你呀,我简直都爱死你了,不好意思,只有在单位才能上网,所以今天才看到你的恢复
谢谢谢谢谢谢谢谢谢!!!!      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。