我最近参与了一个三层应用系统的开发,现在系统开发快结束了,
系统的数据库采用SQL Server 2000,
开发时,数据库连接本地某个机器上的SQL Server,客户端连接应用服务器时
连接本地局域网的某台机器,
现遇到的问题是:
发布给用户的时候,用户机器上的SQL Server实例名不同于开发时的,所以我必须
在发布时在用户机器上先装Delphi,使应用服务器重新连接SQL Server,
而客户端同样必须将DCOM重新连接到应用服务器所在的机器,
这样做太笨了,
我想让系统能在安装后有一个设置连接的操作,怎么做呢?
系统的数据库采用SQL Server 2000,
开发时,数据库连接本地某个机器上的SQL Server,客户端连接应用服务器时
连接本地局域网的某台机器,
现遇到的问题是:
发布给用户的时候,用户机器上的SQL Server实例名不同于开发时的,所以我必须
在发布时在用户机器上先装Delphi,使应用服务器重新连接SQL Server,
而客户端同样必须将DCOM重新连接到应用服务器所在的机器,
这样做太笨了,
我想让系统能在安装后有一个设置连接的操作,怎么做呢?
解决方案 »
- 请教一个StringGrid设置背景颜色的问题。
- 哼~哼~,终于有散分的机会了!
- Socket 的ErrorCode在哪可以查到详细说明啊?最好是中文的。
- 求救:哪位大哥、大姐、大虾,能否推荐学DELPHI的好书!!!
- 见笑了,为什么GetMenuItemInfo及InsertMenuItem怎么也不好用?
- 为什么图片会产生偏移?
- 通过程序启动sqlserver2000
- 指点江山(求赐教)
- toolbar上的按钮,偶用actionlist控制,但偶怎么能实现这些按钮与菜单的选项关联呢?偶设置了菜单选项的action属性,但运行后,按钮都不
- 在程序中如何将IE的主页地址修改为指定的网址?
- 我想把表1的‘姓名’字段里的值,复制到表2里去,怎么办?需要几个adoquery.
- 干delphi有前途吗
客户端与应用服务器是通过DCOM连接的,
问题是:
应用服务器解决的是数据库连接问题,
而客户端解决的是与应用服务器的连接问题。
三个点通过两条线就连接起来了。
我是用oracle8.
但是他的安全性不如DComConnection
包括SQL Server实例名,连接的库名,这样方便得很,要更改也很容易。
一些配置类的东东最好是不要写死在程序中。
三层的程序,一般使用socket连接为好,不然的话你把程序给客户以后,
如果他们重新系统后,会烦到你要死....
2.同时,该控件可以采用机器名访问SQL SEVER,也可以采用IP地址访问,这些都是可以搞定的。
3.同样在用户端与中间件的通讯也是类似的,只是采用的方法不同,它需要在ActiveForm中定义属性,在ASP网页中为这些属性赋值即可。
我们采用这种方法已经搞定很多项目了,非常可靠!
应该在程序中 动态指定//
dcom的配置很麻烦//
主 题: DCOMCNFG怎样配置才能发布利用DCOMConnection连接的分布式应用程序?
作 者: lining_cumt985 (小白)
等 级:
信 誉 值: 100
所属论坛: Delphi 基础类
问题点数: 100
回复次数: 5
发表时间: 2002-5-19 20:43:41
我把所有的用户都作为完全控制了,可是在客户端总是不能调用应用程序服务器。
出现错误:服务器运行失败。
不知道该怎样配置DCOM?
回复人: robbot(曾记否) ( ) 信誉:100 2002-5-19 21:21:33 得分:10
客户端发布了midas.dll了吗,
Top
回复人: delphi0302(好好学习,天天向上!) ( ) 信誉:100 2002-5-19 21:38:15 得分:10
客户端发布了midas.dll
Top
回复人: lining_cumt985(小白) ( ) 信誉:100 2002-5-19 21:43:51 得分:0
客户端已经安装Delphi5了。难道要拷贝一个midas.dll过去?
Top
回复人: make11111(可可(清舞飞扬的男友)) ( ) 信誉:100 2002-5-20 9:23:07 得分:80
DCOM配置 如果在Windows NT环境下正常运行应用服务器,必须进行DCOM配置。配置方法如下: 1.运行NT服务器上的dcomcnfg程序,进行DCOM配置。 2.进入DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“无”。 3.进入DCOM的总体默认安全机制页面,确认默认访问权限和默认启动权限中的默认值无EveryOne,如果不去掉EveryOne,应用服务器不能正常启动。 4.在常规页面中,双击你的应用服务器,打开你的应用服务器DCOM属性设置。 5.将常规页面中的身份验证级别改为“无”。 6.位置页面中选上“在这台计算机上运行应用程序”。 7.将安全性页面设置中,均选择“使用自定义访问权限”,编辑每一个权限,将EveryOne加入用户列表中。 8.身份标识页面中,选择“交互式用户”。 9.NT的GUEST用户不能禁用。同样,你要把你服务器上的的midas.dll考到客户机器的system目录下才行
同时运行一下regsvr32 midas.dl
在写中间件是用ADOConnection
在远程模块的Create事件中:
try
adoconnect.connected:=false;
adoconnect.connectionstring:=adostr;//(adostr是连接数据库的连接字符串,可以通过
//做一个小软件把这个连接字符串写入注册表中,然后进行读入就可以了)
adoconnect.connected:=true;
except
adoconnect.connected:=false;
end;
做完中间件后在属性面里把connected设置为False ,连接字符串设为空,然后进行编译。
在发布时只要和Midas.dll一起发布,并注册就可以使用。