ATL Server
   HOME

TheInfoList



OR:

ATL Server is a technology originally developed by
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washing ...
for developing web-based applications. It uses a tag replacement engine written in
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
to render web pages. It draws on the existing technologies like
ISAPI The Internet Server Application Programming Interface (ISAPI) is an N-tier API of Internet Information Services (IIS), Microsoft's collection of Windows-based web server services. The most prominent application of IIS and ISAPI is Microsoft's web ...
and the
Active Template Library The Active Template Library (ATL) is a set of template-based C++ classes developed by Microsoft, intended to simplify the programming of Component Object Model (COM) objects. The COM support in Microsoft Visual C++ allows developers to create a v ...
, and includes a template library which is dedicated for use with developing Web-based applications. ATL Server first appeared with
Visual Studio .NET 2003 Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms ...
. It was included in
Visual Studio 2005 Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms such ...
but is no longer supported since the release of
Visual Studio 2008 Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms such a ...
. Most of the ATL Server code base has been released as a shared source project on
CodePlex CodePlex was a forge website by Microsoft. While it was active, it allowed shared development of open-source software. Its features included wiki pages, source control based on Mercurial, TFVC, Subversion or Git, discussion forums, issue trac ...
, a Microsoft-run code sharing web site. A typical ATL server application consists of at least one ISAPI extension DLL along with one or a number of Server Response Files (.srf) and their associated application DLL files which provide the application functionality.


SRF files

SRF files can contain a mix of
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
and script tags. SRF script tags are denoted by the closing braces. A single SRF file may call code from a number of application DLLs. Similarly, a single application DLL may serve a number of SRF files. The simplest SRF file must contain one or more references to application DLLs and one or more calls to a functions within those DLLs. A simple SRF file would look something like this: The first line of the file: is used to identify the DLL and the class that the SRF file will make calls to. Within the file, function calls would look like this: In the above case, the ATLServerHelloWorld.dll DLL contains a definition of a "Default" class as shown below: equest_handler("Default")class CDefault { ... ag_name(name="HelloWorld") HTTP_CODE OnHelloWorld(void) { m_HttpResponse << "Hello World!"; return HTTP_SUCCESS; } }; Note the use of the request_handler attribute on the class to identify that this is the "Default" class and also note the use of tag_name attribute to identify the "HelloWorld" method.


References


Hello, ATL Server: A Modern C++ Web Platform
InformIT Pearson Education is a British-owned education publishing and assessment service to schools and corporations, as well for students directly. Pearson owns educational media brands including Addison–Wesley, Peachpit, Prentice Hall, eCollege, ...
, September 29, 2006.


External links


MSDN: ATL Server referenceATL Server at CodePlex archive
C++ libraries Web frameworks Microsoft Visual Studio