我最近开发了一个MIDAS三层结构的程序,用的是DELPHI6,服务端工程包括一个窗体、
一个远程数据模块,远程数据模块上包括一个TDatabase TQuery TSession TDataProvider部件,各部件属性设置没问题,存盘运行后正常,查本机注册表已经
注册。  客户端建立了一个Application工程,窗体上放置了TDConnection等部件。
如果客户端与服务端在同一台机器上,TDConnection与服务端能顺利连接上,
如果客户端放在与服务端不同的机器上,却无法连上,请问为什么?

解决方案 »

  1.   

    这是个老问题,要配置 dcom。 你查查以前的帖子就行了!
      

  2.   

    服务到家:
    客户端配置如下:
    1. 先把服务器在客户端运行,系统会自动注册,然后点”开始”->”运行”,输入”dcomcnfg”,然后回车,启动dcom配置。
    2. 常规页面中,双击你的应用服务器,打开你的应用服务器DCOM属性设置。
    3. 将常规页面中的身份验证级别改为“无”。
    4. 身份标识页面中,选择“交互式用户”/或启动用户。
    5. 位置页面中设好你的中间层的的机器。
    6. 进入DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“无”。  服务器端配置如下:
    1. 运行NT服务器上的dcomcnfg程序,进行DCOM配置。
    2. 进入DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“无”。
    3. 进入DCOM的总体默认安全机制页面,确认默认访问权限和默认启动权限中的默认值无EveryOne,如果不去掉EveryOne,应用服务器不能正常启动。
    4.在常规页面中,双击你的应用服务器,打开你的应用服务器DCOM属性设置。
    5.将常规页面中的身份验证级别改为“无”。
    6.位置页面中选上“在这台计算机上运行应用程序”。
    7.将安全性页面设置中,均选择“使用自定义访问权限”,编辑每一个权限,将EveryOne加入用户列表中。
    8.身份标识页面中,选择“交互式用户”。
    9.NT的GUEST用户不能禁用。