费了半天劲,做了个三层程序,不太熟悉。最后发现,应用服务和数据服务必须在同一台机器上,才能使用,用的是Midas,SocketConnection。如果把应用放到另外的机器上,SocketConnection的ServerName和ServerGUID 根本没办法写?晕啊? 还还叫三层吗?  像我这样,要应用服务和数据库分两台机器放,怎么设置?

解决方案 »

  1.   

    一、你用的是什么版本的delphi群没有说清楚
    二、可能是你少了一个必要的中间控件
    三、下面的列系列群,总有一个有可能给你满意的答案
    ② FireMonkey[DELPHI XE3](194191706);
    ① FireMonkey[DELPHI XE3](122104774);
    ⑦DATASNAP[DELPHI]三层:215965513(500人群) ⑥DATASNAP[DELPHI]三层:193300710(500人群)
    ⑤DATASNAP[DELPHI]三层:8964240 (500人群)
    ④DATASNAP[DELPHI]三层:81666221(200人,RO方向,快满)
    ③DATASNAP[DELPHI]三层:19905713(500人,快满)
    ②DATASNAP[DELPHI]三层:41464226(500人已满)
    ①DATASNAP[DELPHI]三层:67803772(500人已满)
    Delphi 地方交流群:
    [Delphi]深圳(145061232);
    [Delphi]广州(94131767);
    [Delphi]北京(158900366);
    [Delphi]上海(118195948);
    [Delphi]西南(164471691);
    [Delphi]天津(171753600);
    [Delphi]杭州(199837776);
    [Delphi]西北(124457199);
    [Delphi]东北(168352317
    [Delphi]安徽:61247067
      

  2.   

    ServerName就是另外机器的IP或主机名吧?
      

  3.   

    ServerName,只能填写字串,不允许写机器名或IP。
    咋搞啊?我如果在应用服务端运行一下应用程序,ServerName 这个地方是个下拉框,能显示出我的应用服务名称。那样可行,但是这不应用和数据,必须同一台机器了吗,难道必须那样?可是,如果我应用服务程序和数据库服务不在同一个机器,怎么搞?
      

  4.   

    用一些辅助性控件吧 indy  zlib123
      

  5.   

    要学习什么,
    都要手头先有点资料,
    把基础概念先弄明白,不要太浮躁,
    你说的SocketConnection是客户端和应用层的连接,
    这是1-2层间的连接,
    而应用层和和数据库的连接可以用ADO,
    在ADOConnection中设置数据库服务器的IP,
    这时和CS结构一样,数据库放哪里都可以,
    这是2-3层间的连接,
    所以才叫3层
    midas有自带的demo,去安装目录下看看
      

  6.   

    非常抱歉!我没表达明白。我的意思是说,应用服务和安装scktsrvr.exe的机器,能否分开?也就是,应用服务和scktsrvr.exe分别在不同的机器上运行。
      

  7.   

    scktsrvr.exe就是为了SocketConnection而存在的,
    应用服务器和scktsrvr.exe就应该放在一起,
    为什么要分开,
    数据库分开和这个没有关系,
    例如用SQL Server,
    应用端用1433端口连接数据库服务器,
    客户端用21端口连接scktsrvr.exe,
    各不影响
      

  8.   

    scktsrvr.exe和应用服务器要在一起,应用服务器就靠它运行的数据库服务器可以不在同一电脑