科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件ATL服务器:用VC++创建高性能的Web应用程序和XML Web服务(2)

ATL服务器:用VC++创建高性能的Web应用程序和XML Web服务(2)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

C++是很多网络中繁忙站点的核心。这为构建中间层企业逻辑提供了高度的性能基础,经常用于扩展Web服务器和动态地生成HTML......

作者:佚名 来源:Microsoft 2007年11月5日

关键字: ATL 服务器 VC++ Web服务

  • 评论
  • 分享微博
  • 分享邮件
运行中的ATL 服务器

  解释这种结构最好的方式是举一个例子:规范的"Hello World!"。此处显示的"Hello World!"应用程序是下一Visual C++发行版用于构建ATL服务器应用程序的开端。运行完ATL服务器应用程序向导后创建的在部分代码如此处所示。

  一个ATL服务器ISAPI DLL被用于每个Web站点。DLL作为IIS的扩展,允许引用了.SRF文件的URLs被DLLs所处理。ISAPI DLL是IIS注册的用于.SRF文件的默认处理器。在这个例子中,用户访问http://webserver/atlserver/HelloWorld.srf通过ISAPI DLL初始化.SRF文件的处理过程。ISAPI DLL 通过 CisapiExtension类完成它的实现。ISAPI扩展通过IserviceProvider接口提供来自ISAPI扩展的服务以请示处理对象。ISAPI可能提供的一些服务是会话服务,每线程数据库链接,浏览器功能服务,及一些缓冲服务,包括模板,DLL,和二进制大对象(BLOB)缓冲。如果在ATL服务器应用程序向导选中了,ATL服务器将自动为开发人员构建一个ISAPI DLL。开发人员可以根据期望的定置等级,修改生成的ISAPI DLL的默认代码,但这并不是必需的。

  .SRF文件驻留在Web服务器上,它定义了网页如何布局,由ATL服务器应用程序DLLs生成的动态内容如何使用。.SRF文件的内部内容是大多数开发人员所熟悉的;他们象HTML文件,但有一些值得注意的附加部分。

{{handler HelloWorld.dll/Default}}
<html >
< head >
< title >{{Title}}< /title >
< /head >
< body >
< h1 >{{Title}}< /h1 >

{{HelloWorld}}

< /body >
< /html >

表 1. HelloWorld.srf文件的内容

  此.SRF文件的最上一行指出,由这个文件调用的代码位于HelloWorld DLL中,而HelloWorld DLL是为名为"'Default'"的C++对象提供一个接口。注意,此处使用了两对大括号。在SRF文件中,这两对大括号叫作代替标记。这些大括号中的内容包含了描述指示和/或在文件上部的处理器标记中命名的C++对象的方法名。{{Title}} 和 {{HelloWorld}}替代标记指定了"'Default'"对象(此对象将被调用以提供动态内容)的功能。

  也许你已经注意到了,.SRF文件将HTML页布局与产生动态内容的代码区分开来。借助于ATL服务器,网页设计器可以在需要动态内容的地方,使用HTML编辑工具如Visual Studio .NET?位置标签对网页进行设计和布局。这些标签与由Visual C++创建的服务器端应用程序DLLs内的代码相对应。对代码进行处理的开发人员可以这样做,而不必关心网页中布局或静态文本的偶尔变化。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章