214:
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.
129:
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:
103:
along with one or a number of Server
Response Files (.srf) and their associated application DLL files which provide the application functionality.
126:
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.
270:
132:{{handler ATLServerHelloWorld.dll/Default}} <html> <body> {{HelloWorld}} </body> </html>
260:
150:
In the above case, the ATLServerHelloWorld.dll DLL contains a definition of a "Default" class as shown below:
265:
89:
85:
81:
74:
77:, and includes a template library which is dedicated for use with developing Web-based applications.
227:
100:
35:
30:
39:
55:
223:
240:
63:
254:
92:. Most of the ATL Server code base has been released as a shared source project on
141:
is used to identify the DLL and the class that the SRF file will make calls to.
245:
66:
51:
99:
A typical ATL server application consists of at least one ISAPI extension
93:
59:
70:
112:
144:
Within the file, function calls would look like this:
115:
and script tags. SRF script tags are denoted by the
29:
21:
88:but is no longer supported since the release of
58:. It uses a tag replacement engine written in
69:. It draws on the existing technologies like
8:
224:Hello, ATL Server: A Modern C++ Web Platform
138:{{handler ATLServerHelloWorld.dll/Default}}
16:
15:
96:, a Microsoft-run code sharing web site.
50:is a technology originally developed by
7:
14:
111:SRF files can contain a mix of
80:ATL Server first appeared with
246:ATL Server at CodePlex archive
1:
135:The first line of the file:
287:
241:MSDN: ATL Server reference
191:"Hello World!"
152:
271:Microsoft Visual Studio
82:Visual Studio .NET 2003
75:Active Template Library
56:web-based applications
230:, September 29, 2006.
84:. It was included in
18:
90:Visual Studio 2008
86:Visual Studio 2005
45:
44:
278:
210:
207:
204:
201:
198:
195:
192:
189:
186:
183:
180:
177:
174:
171:
168:
165:
162:
159:
156:
123:closing braces.
19:
286:
285:
281:
280:
279:
277:
276:
275:
251:
250:
237:
220:
212:
211:
208:
205:
202:
199:
196:
193:
190:
187:
184:
181:
178:
175:
172:
169:
166:
163:
160:
157:
154:
148:
147:{{HelloWorld}}
139:
133:
109:
54:for developing
12:
11:
5:
284:
282:
274:
273:
268:
266:Web frameworks
263:
253:
252:
249:
248:
243:
236:
235:External links
233:
232:
231:
219:
216:
185:m_HttpResponse
153:
146:
137:
131:
108:
105:
43:
42:
33:
27:
26:
23:
13:
10:
9:
6:
4:
3:
2:
283:
272:
269:
267:
264:
262:
261:C++ libraries
259:
258:
256:
247:
244:
242:
239:
238:
234:
229:
225:
222:
221:
217:
215:
151:
145:
142:
136:
130:
127:
124:
122:
118:
114:
106:
104:
102:
97:
95:
91:
87:
83:
78:
76:
72:
68:
65:
61:
57:
53:
49:
41:
37:
34:
32:
28:
24:
20:
213:
200:HTTP_SUCCESS
170:OnHelloWorld
149:
143:
140:
134:
128:
125:
120:
119:opening and
116:
110:
98:
79:
47:
46:
255:Categories
218:References
48:ATL Server
22:Written in
17:ATL Server
167:HTTP_CODE
107:SRF files
67:web pages
52:Microsoft
40:Framework
228:InformIT
188:<<
158:CDefault
94:CodePlex
73:and the
36:Library
197:return
64:render
155:class
71:ISAPI
176:void
113:HTML
31:Type
164:...
101:DLL
62:to
60:C++
38:or
25:C++
257::
226:,
209:};
121:}}
117:{{
206:}
203:;
194:;
182:{
179:)
173:(
161:{
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.