A
access requirements, 29, 33, 41
Active Template Library (ATL). See ATL
ActiveX controls. See also ATL Server
adding, 100
Aximp.exe utility, 101
component access, 20-21, 24-25
future of, 3
identifying in registry, 144
overview, 99-100
referencing, 21
Windows Forms, 4, 7, 100-102, 143-148
wrapping, 6
Add An Assembly To The Assembly Cache link, 48
adding
applications to Component Services, 35
assemblies, 48
COM+ components , 34, 38-40
computers, 32
queues to applications, 169
role-based security, 41-45
AddRef method, 9, 140, 481
AddrOfPinnedObject object, 455
administrative tasks , 30
aggregatable attribute, 217, 221-224
aggregates attribute, 217, 221-224
all- names operation mode, 306
allocating resources, COM+, 29
AllocHGlobal method, 446, 449
AppCollection object, 366
application development. See COM in .NET applications; COM+ in .NET applications
application dumps, 380-381
application hierarchies, COM+, 34
application identity, 37, 157
application level controls. COM+, 33
application level security, 43
application proxies, 45-46
application roots, 405-407
application security, COM+, 33
application types, 179-181
ApplicationAccessControl attribute, 308
application-defined HRESULTs, 13
ApplicationName attribute, 308
arguments
handler functions, 269, 274
methods , 87
return values, 60
type library conversions, 65-66
type library creation, 118
arithmetic operators, 427
arrays
ATL
classes, 234-238
overview, 234
SAFEARRAYs, 239-242
attributed programming, 215
converting, 81-83
marshaling, 447-452
pinning, 426
sharing data, 426
stack allocation, 427
ASP scripts, 381-382, 386, 393-396
assemblies. See also Global Assembly Cache
adding, 48
configuring, 48-49
directory, 68
dynamic registration, 349
exporting, 125-126
identifying, 9
installing, 72
interop
component referencing, 60
generating, 55
overview, 54
TlbImp.exe, 57-61
TypeLibConverter class, 61-67
Visual Studio .NET, 56
locations, 8, 67
names, 125, 139
object capability information, 9
primary interop, 54, 73
private keys and, 72
properties, 68
registering, 114
removing, 72
signing, 58, 71-72, 119
strong names, 70-71
versions, 67, 121, 126, 142
viewing, 48-49
visibility, 14, 112
Assembly Cache snap-in, 48
Assembly Registration tool, 73
AssemblyInfo source files, 142
AssemblyVersion attribute, 143
asynchronous applications
MSMQ
client applications, 335-342
listener/player, 327-335
overview, 316-320
recorder/player, 320-327
overview, 315-316
async_uuid attribute, 212
ATL (Active Template Library). See also ATL Server; attributed programming
breaking existing code, 258
changes in, 233
data handling
classes, 234-238
collections, 242
overview, 234
SAFEARRAYs, 239-242
described, 189
error handling, 224
event handling, 225-230
module classes, 209, 234
operator& implementation, 257
regular expression classes, 256-257
security classes, 252-254
shared classes, 243-250
string conversion classes, 250-251
ATL Server
architecture, 259-266
described, 233
overview, 259
SRF files, 261-266
Web applications
attributes, 266-268
DLLs, 260-261, 272
handler methods, 269-270, 274
overview, 266
parsing functions, 270, 275-277
project setup, 271-274
sample applications, 270-277
Web services
C++, 283-286
creating, 281-283
implementing, 279-281
overview, 277
SOAP, 278-279
AtlsHttpError function, 275-277
attribute parameters, 193, 201
attribute providers, 192, 199
attributed programming. See also attributed programming walkthroughs
aggregation, 221-224
arrays, 215
C++ code, 193-194
coclasses , 216-219
described, 189
error handling, 224
event handling, 225-230
interfaces, 211-216
linker options, 231
methods, 214-215
modules, 207-211
parameters, 214-215
return types, 214-215
attributed programming walkthroughs
IDL and, 199
inserted code, 195-196
methods, 200-203
objects, 196-200
overview, 194-195
properties, 200-203
testing, 203
text editor process, 204-207
attributes, 192
aggregates, 221-224
arrays, 215
C++ code, 193-194
coclass, 216-219
custom, 141, 194, 210-211
emitidl, 220
error handling, 224
event handling, 225-230
importing, 74
interface definitions, 211-216
methods, 214-215
module, 207-211
.NET interoperability and, 141
.NET types exposed to COM, 108-114
overview, 190-191
RegSvcs utility and, 295
stand-alone, 219-221
Web applications, 266-268
authorized user options, 307
AutoDispatch attribute, 107, 110
automated subscriptions, 368
automatic component updates, 171
automatic memory management, 401
automatically generated IIDs, 128
Automation marshaler , 112
AutomationProxy attribute, 112