RealThinClient SDK Pro教程:编写您的第一个远程功能(第6课)

翻译|使用教程|编辑:况鱼杰|2019-10-09 16:51:10.730|阅读 111 次

概述:我们将使用服务器和客户端来构建解决方案。关于RealThinClient Components 的客户端的第一课很简单,但它展示了客户端-服务器系统背后的概念,该服务器系统可能是大型应用程序的基础。我们将使用远程功能来完成此任务。本文将会介绍编写您的第一个远程功能的第一节-服务器。

# 您正在找协同办公软件吗?点击这里站长给您推荐 #

相关链接:

     RealThinClient SDK是用于开发标准的HTTP(S)服务器,ISAPI扩展以及客户端的VCL控件。可用于Windows下的CodeGear Delphi 6-2010。关于RealThinClient SDK的教程会持续更新,本节是RealThinClient SDK的第四课,如何从服务器发送小文件。

点击下载最新版RealThinClient SDK


服务器

    这是我们有关如何使用远程功能的第一个示例。基本上,我们正在使用:

  • rtcServerModule

  • rtcFunctionGroup

  • rtcFunction

    使用这三个组件,我们可以编写可以由RTC客户端调用的函数。

步骤:

  1. 打开一个新项目

    我们在IDE中打开一个新项目。

    新项目

    将Form1的Caption属性更改为Server for Remote Function Calls。

  2. 使用RtcHttpServer组件

    从组件的面板中获取RtcHttpServer并将其拖到项目的主窗体中,然后,将其重命名为RtcHttpServer。

    02DEMO5AddRtcHttpServerComp.png

    将RtcHttpServer1组件重命名为RtcHttpServer,在属性中,将端口设置为80。

    将RtcHttpServer的端口设置为80

    现在,为我们的主窗体定义OnCreate事件,以使我们的RtcHttpServer组件在应用程序启动后立即开始侦听请求。

    现在,我们已经配置了RtcHttpServer组件并准备接受请求。

    procedure TForm1.OnCreate(Sender: TObject)
    begin
      RtcHttpServer.Listen();
    end;
  3. 使用RtcServerModule和RtcFunction组件

    从RTC服务器选项卡上,在窗体上放置一个RtcFunctionGroup:

    RtcFunctionGroup组件

    将其重命名为RtcFunctionGroup对于要实现远程功能的每个窗体或模块,将使用一个FunctionGroup。所述RtcFunctionGroup组件提供访问一组远程功能。

    要实现远程功能,您将至少需要一个RtcFunctionGroup组件并将一个或多个RtcFunction组件链接到该组件。功能组用于将功能调用作为来自同一组的其他功能调用的参数。RtcServerModule和RtcClientModule组件主要使用它来保存其远程功能的实现。

    接下来,从RTC服务器选项卡上,在窗体上放置一个RtcServerModule。

    RtcServerModule组件

    对于RtcServerModule

    RtcServerModule属性

    • 设置FunctionGroup = RtcFunctionGroup

    • 设置ModuleFileName = / mytest

    • 设置服务器 = RtcHttpServer

    ModuleFileName属性是大小写敏感的,所以记得很清楚,你在这里干什么用的,你将不得不使用完全相同的ModuleFileName在RtcClientModule组件的客户端。您将为每个要实现的功能使用一个RtcFunction组件。

    所述RtcServerModule组件接受该请求,并使用TRtcFunctionGroup组件来执行接收的功能并且准备的结果。如果接收到的对象内部有函数调用,则将执行这些函数,并且生成的对象将仅包含数据。结果对象将被发送回发出请求的客户端。如果发生异常,执行将被中止,发送回客户端的对象将成为异常消息。

    现在,从RTC服务器选项卡上,在窗体上放置一个RtcFunction:

    RtcFunction组件

    RtcFunction属性

    • 设置FunctionGroup = RtcFunctionGroup

    • 设置FunctionName = Hello

    这个RtcFunction是我们的远程功能。要使用它,我们需要定义一个函数名称,将其链接到一个功能组并定义其OnExecute事件。

    如果发生异常(您也可以在OnExecute事件处理程序中引发),则发出请求的客户端将因此获得异常消息。

    您可以在一个请求中组合多个函数调用,或者将函数调用作为参数传递给其他函数调用。这对您实现的功能没有影响,因为在执行所有函数调用(客户端可能已将其定义为参数)之后,您的函数将始终接收纯数据。

    而在串行功能的情况下调用(称为一个请求不止一个功能),如果一次调用将异常结束了,对于结果该电话将被rtc_Exception(用适当的eror消息),而任何先前的函数返回的结果并且请求的执行被中止。

  4. 编写我们的RtcFunction的OnExecute事件

    procedure TForm1.HelloExecute(Sender: TRtcConnection;
      Param: TRtcFunctionInfo; Result: TRtcValue);
    begin
      Result.asString := 'Hello, ' + Param.asString['name']
    end;
  5. 保存,编译并运行我们的项目,以检查一切是否正常。

    保存该项目,将其命名为任意名称。记住这是您的Server,因此使其有意义。保存项目后,编译并运行它以检查此处是否一切正常。关闭它以创建您的客户端应用程序。

    下一节我们将会接着介绍本课程的第二节-客户端,如果您有任何的建议和疑惑都可以在评论区留言,也希望感兴趣的朋友可以持续关注本教程。


 如果您对想要购买正版授权RealThinClient SDK Pro,可以联系在线客服>>咨询相关问题。

    关注慧聚IT微信公众号 ☟☟☟,了解产品的最新动态及最新资讯。

dd2629f30d553d56ccaf7164fdcb784e-sz_28327.webp.jpg




标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果

文章转载自:RealThinClient https://rtc.teppi.net/realthinclient-sdk-lesson-5-write-your-first-remote-function-server-and-client/#comment-71

登录 慧都网发表评论


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关厂商
相关产品
RealThinClient SDK Pro

用于开发标准的HTTP(S)服务器、ISAPI扩展及客户端的VCL控件

在线
客服
在线
QQ
咨询
电话
173-8239-2642
购物车 反馈 返回
顶部
在线客服系统
live chat