D5下主程序和DLL如何共享1个DataBase连接别名

NewPrince 2014-10-16 02:11:14
Delphi5下主程序创建TDataBase并且连接到数据库,调用DLL的时,DLL中也有tQuery可以用主程序的数据集别名连接数据库。
如何解决?在线等!!!!!!
...全文
257 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
NewPrince 2014-10-24
  • 打赏
  • 举报
回复
有没有知道的,分享下
Q_188136923 2014-10-24
  • 打赏
  • 举报
回复
本人搞其它的可能不行,但是用exe+dll开发数据库类的管理软件还是有5年心得。进销存,人事考勤,旅业,餐饮系统都实践了。 写框架,软件工程理论,OOP技术还是要懂一点的。不然,半成品一堆一堆的!
Q_188136923 2014-10-24
  • 打赏
  • 举报
回复
我再估计你,要在dll中封装FORM. 还有一堆问题等着你解决呢。给你 365*2 的时间,做出成熟的东西我看看。
Q_188136923 2014-10-24
  • 打赏
  • 举报
回复
你认为简单就简单,我告诉你,你未必能实现, 你先看看windows技术内幕,有一篇讲windows Dll文件的使用方法与限制。再来搞这个东西。 再就是看你用什么数据通信组件,你用BDE? 放弃吧。 多半在DLL内部使用会出现这些问题。 推荐你用uniDac . 就是将TDataModel 封装成为个类,传递到DLL内。 这里面涉及的问题不少!再告诉你一简单的方法,就是常用的,使用BPL技术。麻烦就是发布时要带许多包。 多年的积累,收点辛苦费你叫啥!
Playmaster 2014-10-22
  • 打赏
  • 举报
回复
引用 7 楼 NewPrince 的回复:
[quote=引用 6 楼 Playmaster 的回复:] 新建一个dll或bpl,在里面提供一个公用函数,第一次调用函数时创建tdatabase并保存到一个全局变量里, 以后再调用就返回保存的值。 你的exe和dll都引用这个公用函数就可以了。
你好,exe 中database是静态创建的,只要dl也引用这个单元,dll中query直接调用exe中相同的数据库别名就行了? 也不会出现login的对话框?[/quote] 是否显示login对话框是要在tdatabase的连接参数里设置,给dll无关。 很早就不用bde了,早忘了有哪些连接参数了。
NewPrince 2014-10-22
  • 打赏
  • 举报
回复
就这么个问题,还有朋友要收费?呵呵
Q_188136923 2014-10-22
  • 打赏
  • 举报
回复
这个问题和你一两句话讲不清楚。不难,涉及到较多的技术细节。我可以提供完整的方案。可以私聊:Q188136923
NewPrince 2014-10-21
  • 打赏
  • 举报
回复
引用 5 楼 lyhoo163 的回复:
这涉及到DLL与宿主EXE文件之间共享数据问题,一二句话是说不清的。
能不能给个例子,邮箱 yujingang@ftrend.cn
NewPrince 2014-10-21
  • 打赏
  • 举报
回复
引用 6 楼 Playmaster 的回复:
新建一个dll或bpl,在里面提供一个公用函数,第一次调用函数时创建tdatabase并保存到一个全局变量里, 以后再调用就返回保存的值。 你的exe和dll都引用这个公用函数就可以了。
你好,exe 中database是静态创建的,只要dl也引用这个单元,dll中query直接调用exe中相同的数据库别名就行了? 也不会出现login的对话框?
NewPrince 2014-10-20
  • 打赏
  • 举报
回复
使用主程序别名,dll调用后需要输入sqlserver sa 的密码,这个如何屏蔽掉!
NewPrince 2014-10-20
  • 打赏
  • 举报
回复
怎么传输到DLL中?我试过了,D5下不好用啊,无效的别名!你是怎么调用的用的什么版本?
Playmaster 2014-10-20
  • 打赏
  • 举报
回复
新建一个dll或bpl,在里面提供一个公用函数,第一次调用函数时创建tdatabase并保存到一个全局变量里, 以后再调用就返回保存的值。 你的exe和dll都引用这个公用函数就可以了。
lyhoo163 2014-10-20
  • 打赏
  • 举报
回复
这涉及到DLL与宿主EXE文件之间共享数据问题,一二句话是说不清的。
CCC的 2014-10-16
  • 打赏
  • 举报
回复
申明一个全局的TDataBase,放到一个公用的单元里,在主程序里给他 赋值,然后在Dll引用就可以了
dyonggan 2014-10-16
  • 打赏
  • 举报
回复
dll直接连BDE别名就行了

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧