index [ptgmedia.pearsoncmg.com]ptgmedia.pearsoncmg.com/images/0201616130/index/tunstallindex.pdf ·...
TRANSCRIPT
769
Index
AAbsolute timers, 319, 321Abstract base class, 126Abstract qualifier, 138Accessing objects, 382–85Access levels, 36Active Template Library (ATL), 153, 267,
396, 605ActiveX
components, 127control, using in an MMC snap-in,
473, 474delegating tasks to an MMC snap-in item,
462–63registry script, MMC snap-in, 460–461, 486snap-in support for, 409, 414, 416, 419
ActiveX controls, 76Add Classes, 747Add a class icon, 145–46Add an instance icon, 147AddEnum, 342, 344Adding snap-in images, 426
AddObjectByPath, 340–342Add/Remove snap-ins menu item, 408Address Translation Group, 40Administration, 567
scripting and, 498and WMI, 494–95
AdvancedQueryOptions dialog, 755Advances in design, 226Adverbs, 579Agent configuration program, 38Aggregation, 169, 170, 172, 575Aliases, 567, 568, 569, 570, 573, 575, 576,
580–89, 592Aliasing, 122Amended flavor, 336Amended qualifier flavor, 251Amendment qualifier, 242, 243, 244,
248, 260American Express, 16American National Standards Institute
(ANSI), 13America Online, 16
Tunstall_index.fm Page 769 Thursday, October 10, 2002 9:46 AM
770 Index
Annotation, 502, 505Anonymous, 516Apache, 76Apartment, unsecured, 327, 329APPEND, 575, 591AppleTalk protocol stack, 30Application programming interface (API), 18,
348, 408, 494, 731Applications
writing to access high performance data, 339–44
writing to access asynchronous data, 325–29
writing to receive asynchronous events, 391–95
writing to receive semisynchronous events, 323–25, 395–97
Applications model, 106, 233Applications namespace, 235–40Applications Working Group (AWG), 15Architectural flexibility, of WMI, 175Architecture, snap-in, 406–08Arguments, 520
method, 214–15Array object properties, manipulating,
297–300, 381–82Assembly, 489Assertions, 181–85, 222, 224–25Association classes, 349Association qualifier, 138Associations, 99, 102, 131, 133–35, 143,
155, 165, 172, 222, 229–30, 257–60, 548, 599
adding, 151–52aggregate, 169–70capability to form, 302capability to query and form, 383classes of, 272creating, 146cross-namespace, 202, 237
defining, 201–04notation of, 168subclasses of, 231using VBScript, 541–42
ASSOCIATORS OF, 92, 93, 97, 212, 237Asynchronous calls, 309–13
making, 385–90Asynchronous event, 38, 270, 325–29
writing applications to receive, 391–95Asynchronous event notification mechanism, 81Asynchronous event watcher, 395ATL-based approach, 153Attributes, 56Authentication, 85, 330, 331, 399, 515,
550, 574levels of, 517
AuthenticationFailure, 38, 43Authority property, 400, 514
BBBC, 16BeginEnumeration, 296Behavior (methods), 8, 9BlackSize option, 358, 397BMC Software, 22BNF (Backus Naur Form), 576Breakpoints, 565, 566Brief switch, 576British Standards Institute (BSI), 13Browse for a namespace icon, 141Buffer call-back function, 722, 723Buffer size, 678Built-in classes, 347Built-in providers, 26
CC# programming language, 348, 376, 378, 416C++, 7, 75, 216, 596, 695, 700, 751Call-back function, 701–02, 715–21, 722Call statement, 522
Tunstall_index.fm Page 770 Thursday, October 10, 2002 9:46 AM
Index 771
Cancel method, 386Candidate classes, 186–88Candidate constants, 551Candidate methods, 210–14Cardinality, 168, 202, 203Central governing bodies, 41Central information store, 7Centralized approach, 175–76Centralized repository, 8–10Central server, 177CEventConsumerSink, 652Change the view icon, 144Checkpoint events, 695Child instance event, 711Children, 147, 670, 710CIMV2 namespace, 108, 113, 235
class positioning, 227–32extending, 229–30
Cisco Systems, 22Class-based schema, 594, 596, 597Classcontext qualifier, 138, 656Class definitions, exporting, 245Classes, 9, 69, 80, 99, 102, 155, 161,
166, 174, 201, 222, 229, 335, 575, 592, 595
abstract base, 126adding, 145, 151–52assigning methods to host, 213association, 272, 348candidate, 186–88declaring using MOF, 115–16definint statistical, 191delete, 146handler, 387high performance, 338–39intended for us in method parameters, 290limitations of multinamespace positioning,
236–37ManagementClass, 356ManagementObject, 375
ManagementQuery, 368modifying existing, 113–15namespace, 149–50.NET management, 397parameter, 214placement theory, 227–34positioning, 227provider, 147–49referenced, 131referring to, 271RelatedQuery Object, 370search for a, 141–43SelectQuery, 369static methods in, 371structure of, 165subclassing existing, 113that require security privileges, 332–35
Class explorer, 128–35Class information, 9ClassName property, 353ClassPath property, 351Class qualifier, 351Class related intrinsic events, 189Class viewer, 128, 135Clear Statistics, 43Client applications, 593Client application users, 180, 181Client-side applications, 267CloseTrace, event tracing, 714, 725CLSID property, 602CoImpersonateClient, 665CoInitializeSecurity, 329–332ColdStart, 38Collection, 356, 530Columns, adding your own, 430Comma, as delimiter, 523Common Information Model (CIM), 7, 8, 9,
17, 18, 60–61, 98, 104–08, 155data type, 295, 376, 378indications, 106
Tunstall_index.fm Page 771 Thursday, October 10, 2002 9:46 AM
772 Index
Common Information Model (CIM) continuedrepository, 99, 100, 102–04, 110, 154,
660–63schema of, 160–62, 228structure of, 99studio, 100, 127, 139–47, 206, 232, 356,
494, 496, 542, 549, 582Common Language Run-time (CLR), 347Common Management Information
Protocol, 20Common Management Information
Services, 19Common model, 9, 10, 104–07, 160–61,
170–72, 232Communities, 36–37, 42Community name, 37Community table, 36, 42Compaq Computer Corporation, 22, 38, 49CompareClass function, 611CompareObjects method, 456, 457CompareTo method, 351Comparison operators, 578Compartments, 166Compiler directives, 115Compiling multilanguage MOF files, 260–62CompletedEventArgs, 390CompletedEventHandler, 390Component, 50, 56Component Interface (CI), 49
security, 53Component Object Model (COM), 4, 73,
596, 647, 656class identifiers (CLSIDS), 119, 460, 474co-classes, 409component, 602, 637interfaces, 600interface identifiers (IIDs), 119
Component relationship, 133–34Computer literacy, 27Conditional if...then statement, 523
Configuration, 675–83querying, 683–85
Configure, 43Configuring Windows 98 for WMI, 62–64ConnectionOptions, 397–399ConnectionOptions class, 399Connection times, 35ConnectServer, 337, 268–270, 512Console interfaces, MMC, 411Constants, 506, 550–51Constructor qualifier, 213, 365, 423Consumer, event, 83–84ConsumerClassNames property, 654Consumer provider registration, 654Context command, 571Context property, 355ControlCode flags, event tracing, 685ControlTrace event tracing, 685Cookie, MMC snap-in, 423Copy items, MMC snap-in, 465–66Core components, 62, 64–72Core model, 9, 104, 206, 232CoRevertToSelf, 665CoSetProxyBlanket, 329–332Create method, 360, 374Create an association icon, 146CreateInstance, 361, 385CreateInstanceEnumAsync, implementing,
608, 610, 625CreateInstanceEnum call, 274CreateInstance helper method, 613Create method, 278CreateObjectStub, 325–329Createonly, 124, 362CreatePropertyPages method, 449, 450CreateTraceInstanceId, 711Creation
date, 540–41object, 620–25
Cross-namespace associations, 202, 237
Tunstall_index.fm Page 772 Thursday, October 10, 2002 9:46 AM
Index 773
Crypto API tools, 500CSnapInItem objects, 416, 431
root item, 422–427Custom qualifiers, 119–20Custom views, MMC snap-in, 473–76
DData (properties), 8
creation of, 540–41deletion of, 539–40displaying values of, 532–33input of, 519–21modification of, 536–39pushing to CIM repository, 660–63retrieval of, 527–32
Database Working Group (DWG), 15Data Block component interface, 49Data Block GUID Mapping control method,
120Data consumers, 73, 155, 180Data Link Control protocol, 28Data providers, 73, 80–81, 98, 155Data queries, 91–94, 345Data types
definition of, 294intrinsic, 120, 121
Data values, storing, 41Date and time specification, 298DATETIME data type, 298, 380DCOM security, 327, 328Debugging, 561–67Debug logging facility, 669Debug on Error, 564Decentralized approach, 176–79De facto standards, 12–14DefaultPath property, 353De jure standards, 12–14Delegate, 516, 571Delegate event handlers, 392, 394Delegate methods, 386, 388, 391
Delegation, 331, 400Delete a class icon, 146DeleteInstance, 283DeleteInstanceAsync, implementing, 617,
618, 619Delete an instance icon, 147Delete a property icon, 147DeleteOptions class, 365Deletion method, 282
of objects, 437Deleting
data, 539–40an object, 617–20
Dell Computer Corporation, 49Deployable, 162Derivation hierarchy, 381Description qualifier, 118, 335, 336Design, schema, 179–204Desktop computer, 25
cost of owning, 59Desktop management, 180, 181Desktop Management Interface (DMI), 20,
25, 47–49, 54acceptance of, 26integrating with SNMP, 59model, 50, 56security, 52
Desktop Management Interface Working Group (DMI WG), 15
Destination namespace, 114Destructor qualifier, 215Device id, 9Device Instrumentation development, 73Devices model, 105, 233DHCPEnabled, 548Digital EQuipment Corporation, 14DIM statement, 506Direct access, 75Directory Enabled Networks (DEN)
specification, 13
Tunstall_index.fm Page 773 Thursday, October 10, 2002 9:46 AM
774 Index
DirectRead option, 358Disable Override, 118Disk fragmentation, 84DisplayName qualifier, 243Distributed Component Object Model
(DCOM), 4, 73, 515, 668security, 327, 328
Distributed Management Task Force (DMTF), 2, 14–16, 22, 49, 60, 72, 155, 156,159, 227
web sites of, 161DOD, 41Domain, 116Draft standard, 31Drag and drop, MMC snap-in, 465–71Dynamic data, 55, 101–04Dynamic link libraries (DLLs), 76, 489, 490Dynamic properties, 656–59Dynamic qualifier, 138, 140, 240, 655Dynprops qualifier, 138, 655
EEgpNeighborLoss, 38Element-setting relationship, 134Email, 557–61Embedded property objects, 302–03Embedding objects, 382–85, 742Enable DHCP, 548EnableFlags, event tracing, 679, 681EnableOverride, 118EnableTrace, event tracing, 687EndEnumeration, 296Endpoints, 202, 204EnsureLocatable option, 370Enterprise management, 11Enterprise management development, 1Enterprise network, 6EnterpriseSpecific, 38EnumerateTraceGuides, 692Enumerating objects, 273–76
Enumeration, 284, 285, 297, 342, 356–59, 379
of objects, 607–13Enumeration Options class, 357–358EnumPrivileges qualifier, 332, 401Error checking subroutines, 530Error detection, 521–26Error logging, 526–27Error messages, WMI, 313–14Event
asynchronous, 325–329, 391–395extrinsic, 317–319queries, 321–323semisynchronous, 323–325, 395–397
EventArrived delegate handlers, 394EventArrivedEventArgs, 394EventArrivedEventHandler, 394Event call-back function, event tracing,
701–02, 715–21, 723Event consumer provider, 596, 647, 738, 739Event consumers, 79, 83–84, 94, 98, 315EventCreateInstance helper method, 639Event delegate methods, 388Event-driven script execution, 557Event handling, 81–83, 392, 393EVENT_INSTANCE_HEADER, 712Event model, 106Event notification, 38, 55, 81, 314, 345, 403,
637, 753–58handling, 647–54
Event providers, 79–80, 81, 94, 98, 638developing, 636–37registration of, 646
Event publishing, implementing, 636–644Event queries, 94–96, 737, 740EventQueryList property, 646Events, 184, 207, 314–16, 390–91, 596, 637,
671, 708, 710, 757defining, 188–89extrinsic, 317–19
Tunstall_index.fm Page 774 Thursday, October 10, 2002 9:46 AM
Index 775
how to subscribe to, 321–23intrinsic, 316–17timer, 319–21
Event severity filter, 51Event sink, 645, 650, 652Event subscriptions, 390, 644, 654EVENT_TRACE_HEADER, 704EVENT_TRACE_LOGFILE, 723EVENT_TRACE_PROPERTIES, 677Event-trace provider, 695–713Event tracing, 669, 670, 671–95,
722–25, 732producing, 702–08real-time, 725–27analysis, 713–725
Event type, event tracing, 672standard, 706
EventType property, 319Event Viewer, 316EventWatcherOptions class, 396–397Exception error handling code, 350ExecMethod, 286–293ExecMethodAsync, implementing, 630
EventConsumer, 648EventConsumerProviderRegistration, 654EventFilter, 649EventProviderRegistration, 646
ExecNotificationQuery 332–325ExecNotificationQueryAsync, 328–329ExecQueryAsync, 312–313
implementing, 626ExecQuery method, 285, 536Executable, 162Executing, 162
methods, 630–36using VBScript, 542–43WQL queries, 594
Expanded notification, 431Expensive qualifier, 174
Experimental subtrees, 41Extended schemas, 21, 107–08Extended WQL, 286, 370eXtensible Markup Language (XML), 7, 17,
20–21eXtensible Stylesheet Language Transform
(XSL) files, 580Extension snap-in, MMC, 407, 476–80Exterior Gateway Protocol (EGP), 40Extrinsic events, 82, 98, 188, 314, 317–19
FFAILFAST, 573, 575Fetch-store paradigm, 29Filter, 51, 84, 91
event, 649, 730Filtering expensive data, 174FindConsumer method, 650, 651FindPropertySheet, 457
FilterToConsumerBinding, 649Flag parameters, 267Flags, 273, 275, 276, 280, 283, 285, 293,
325, 371, 608, 614, 621, 680, 681, 685, 707, 729
Flavor, 117, 118–19, 138, 240, 244, 296property, 378
Flow column, 44FlushTimer, event tracing, 679ForcedDebug, 564Forceupdate flag, 123, 124For each...next statement, 530Format property, 584, 585Formats array, 580Friendly name, 582, 585Fujitsu, 49Full Internet standard, 31Full switch, 576Fully qualified name, 145Fully qualified path, 271, 272Functionality, of schema, 158–59
Tunstall_index.fm Page 775 Thursday, October 10, 2002 9:46 AM
776 Index
Functions, 208VBScript, 507
Future-proof, 226
GGetCallStatus, 305–307GetErrorCodeText, 313–314GetFacilityCodeText, 313–314Get function, 29GetInstances call, 356GetMethod, 289, 292–93, 294GetMethodParameter, 373Get methods, 367GetNext, 46GetObject, 272–273GetObjectAsync, implementing, 613, 615GetObjectPathKey, 617GetObjects, 342–344Get operation, 367GetPropertyHandle, 340–342GetProperty method, 657, 658GetPropertyQualifierSet, 338GetQualifierSet, 338GetRequest, 44, 45GetResultItemType, 471, 474GetResultObject, 307GetResultPaneInfo method, 424, 425, 435GetResultServices, 307GetResultString, 307Get verbs, 579, 580Globally Unique Identifiers (GUIDs), 119,
159, 408, 462, 477, 679, 700, 705control, 687, 698event class, 710, 715
Global permissions, 85Graphical User Interface (GUI), 67
scripts that interact with, 511GROUP clause, 95Group component, 133Groups, 50, 56GuidType event tracing, 691
HHandler class, 387, 427, 441, 450, 464Hardware requirements, 6HAVING clause, 96Help, adding your own, 458–60Help and Support Center, 568, 573Helper functions, 441Help facility, in CIM Studio, 232, 233Help for a class icon, 139–41Hewlett-Packard, 14, 49Hierarchical event trace, 708–13High performance classes, 338–39High Performance providers, 75, 596, 732Host classes, assigning methods to, 213HTML, 75Hypertext Transfer Protocol (HTTP), 17, 21
IIBM, 14IComponent, 413
implementing, 421–422IComponent Data, MMC, 413
implementing, 419–22Icon, 130, 139–47IDataObject interface, MMC, 412, 462–63,
480–85Identity, 516Id value, 250IEnumWbemClassObject, 273–276, 284,
304, 307, 323–324IExtendContextMenu interface, 440IExtendControlBar interface, 445Image list, 420Impersonation, 330, 331, 400, 515, 516,
550, 571, 664ImpersonationLevel property, 602Implemented qualifier, 140, 599IMPLEVEL, 574Indentation, 504–05Indexed qualifier, 140Index operator, 351
Tunstall_index.fm Page 776 Thursday, October 10, 2002 9:46 AM
Index 777
Indicate method, 309IndicateToConsumer, implementing, 650Indication, 51, 106Indirect access, 75–76Information model, 39, 55
building, 8Informs, 38, 81Inheritance, 10, 69, 123, 165, 167, 172,
201, 231Inheritance characteristics, 8Inherited properties, 144, 378, 380Initialization, provider, 604–07InitializationReentrancy property, 602InitializeAsAdminFirst property, 602Initializers, 214InitDataClass method, MMC snap-in, 484In-parameters, 289, 293, 372, 373, 374,
631, 632, 634InputBox function, 520In qualifier, 250, 291INRIA, 16InsertItem, namespace, 429InsertItem, result pane, 433Installable, 162Installation files, 62Installer, Windows, 163–64Install on first use option, 163Instance, 710
adding an, 147creation of, 120–22, 277, 360deletion of, 147developing a provider, 597–600list of, 274method to delete, 364retrieving subsets of, 533–36uncommitted, 280, 361updating, 362–63
InstanceContext qualifier, 656InstanceCreationEvent, 642Instance data, 9, 101
deleting, 539–40
Instance enumeration icon, 144Instance of the class disk, 9Instance providers, 80
registration of, 627–29Instance-related intrinsic events, 189Instances button, 150InstancesOf function, 530, 533Instance values, 715Instrumentation, 48Intel, 14, 22InteractionType property, 628Interactive, 568–71, 573, 575Interface Definition Language (DL), 67Interfaces Group, 40Intermediate Language (IL), 347International Organization for Standardization
(SO), 13, 41Internet Control Message Protocol (CMP), 40Internet Engineering Task Force (ETF), 13, 29Internet Information Service (IIS), 76Internet Protocol Group, 40Internetwork devices, 29Interop model, 106Interval times, 319, 321, 740Intrinsic data type, 117, 120, 121Intrinsic event filter, 190–91Intrinsic events, 82, 98, 188, 189, 314,
316–17, 391InvokeMethod method, 370–377InvokeMethodOptions, 377IP address, 38IP spoofing, 42ISA operator, 391ISAPI, 75, 76IsClass property, 353IsInstance property, 353ISnapinHelp2, 458Isolation aware, 488IsSingleton property, 353Item class, MMC snap-in, 469Item notifications, MMC snap-in, 413, 417
Tunstall_index.fm Page 777 Thursday, October 10, 2002 9:46 AM
778 Index
Item object, MMC snap-in, 413Item type, MMC snap-in, 415, 417, 462,
476, 477Items, MMC snap-in, 422–27
copying, 465–66deletion of, 437moving, 468–71renaming, 463–65
IWbemCallResult, 304, 305–06IWbemClassObject interface, 272, 279, 281,
284, 288, 292, 323IWbemConfigRefresher, 340–344IWbemEventConsumerProvider, 647, 650IWbemEventProvider, implementing, 638IWbemEventProviderQuerySink, 644IWbemEventProviderSecurity, 644IWbemHiPerfEnum, 342–344IWbemLocator, 268, 331–332IWbemObjectAccess, 340–342IWbemObjectSink, 309–313, 325–329,
608, 639IWbemPropertyProvider, 657IWbemProviderInit, 600, 604
implementing, 60IWbemRefresher, 340–344IWbemServices, 273, 275, 280, 283, 285, 325
implementing, 605, 608, 613, 618, 621, 626, 630
IWbemServices interface, 595, 600, 639IWbemStatusCodeText, 313–314
JJava, 75Java Script, 497–98
KKeio University, 16Kerberos authentication, 331, 400, 401Kernel event-tracing session, 673–75Key propagation, 131–33
Key properties, 277, 315, 359, 598,617, 648
Key qualifier, 140Keywords, 508–10
LLanguage neutral MOF file, 336Language settings, 574LAN infrastructure, 180, 181Lazy qualifier, 174Legacy management frameworks, 11, 26Life cycle, software application, 162Lightweight Directory Access Protocol Working
Group (LDAP WG), 15Lightweight events, event tracing, 727–31LinkDown, 38LinkUp, 38List of instances, 274List verbs, 579, 580Local Area Networks (LANs), 6Locale property, 400, 513, 572, 574, 658Locale qualifier, 119, 138, 242, 248Locale-specific information, 514Local execution, 552–53Localized namespaces, 335–38Local property, 378, 379Locator interface, 268LogEvent function, 526Log file, 669, 672
event-trace, 713–14LogFileMode flags, 680Logical consumer, 83, 648, 654Looping, 579–80LPARAM parameter, 455Lucent Technologies, 16
MMail Application Programming Interface
(MAPI), 557, 670Mailbag, 158
Tunstall_index.fm Page 778 Thursday, October 10, 2002 9:46 AM
Index 779
Managed object, 8, 11, 41Managed Object Format (MOF), 18, 61, 100,
114–15, 206, 240, 241compileable file, 122–26compiler, 153declaring a class using, 115–16generator, 152–53language tip, 196multilanguage, 260–62qualifiers, 186registration file, 603schema in, 244–60for storage class, 140
Management applications, 28, 73ManagementBaseObject, 350–351ManagementClass, 356Management class, 751Management domains, 10ManagementEventWatcher, 391–395ManagementEventWatcher class, 391, 392Management information base (MIB), 19, 32,
39–42Management Information Format (MIF)
database, 50security, 52
Management infrastructure, 73Management Interface (MI), 49
security, 52–53Management Object, 372
creating, 359–62deleting, 363–65enumerating, 356–59getting, 348–56manipulating properties of, 377–81updating, 362–63
ManagementObjectCollection, 356–359Management object, manipulating in Server
Explorer, 746–753Management object locations, 109ManagementObjectSearcher, 366–370
ManagementOperationObserver class,386, 387
ManagementOptions, 354–355ManagementPath class, 352ManagementQuery class, 368ManagementScope class, 398Management software applications, 164Marshallers, 85Max qualifier, 140Menu item handlers, 441Menus, adding your own, 438–44MessageFlags, event tracing, 729Message Guid, event tracing, 729Message pump, 313Metadata, 100–101, 103, 206Method AddUser, 217Method arguments, 214–15Method calls, 270
making, 286–93, 370–77Method LockAccount, 218Method overriding, 215–16Method parameters, 290Method providers, 80
developing, 629–70registration, 636–37
Method RemoveUser, 217, 219Methods, 99, 155, 166, 167, 174, 207, 208–09,
220–21, 222, 250, 335, 345, 596candidate, 210–14defining, 209–22executing, 630–36method-related, 375SetAsClass, 353SetAsSingleton, 353to delete an instance, 364
Method signature, 214, 215Method StartPostOffice, 220, 221Method StopPostOffice, 218–20, 221Method UnlockAccount, 217–18, 219Metrics model, 106
Tunstall_index.fm Page 779 Thursday, October 10, 2002 9:46 AM
780 Index
Microsoft, 12, 13, 14, 22, 26, 60, 73, 100,155, 156, 188, 235, 354, 493
schema validation team, 227web sites of, 161Windows BacakOffice logo certification, 229
Microsoft Developer Studio, 123Microsoft Exchange 5.5, 476Microsoft implementation of DMTF CIM
schema, 61Microsoft Internet Explorer, 5, 21Microsoft Management Console (MMC), 405,
406, 492and help, 458interfaces, 411snap-in interfaces, 411snap-in wizard, 414
Microsoft Office, 593Microsoft Visio, 159Microsoft Visual C++ Studio, 414MIT Laboratory for Computer Science, 16MMCN_ADD_IMAGES notification, 426MMCN_EXPAND notification, 428MMCN_INITOCX notification, 475MMCN_ PASTE notification, 465–471MMCN_PROPERTY_CHANGE notification,
455MMCN_QUERY_CUTORMOVE notification,
466–471MMCN_QUERY_PASTE notification,
465–471MMCN_REFRESH notification, 437MMCN_SELECT notification, 448MMCN_SHOW notification, 430–433MMC snap-in, 286, 329MMC_VERB_COPY notification, 465–471MMC_VERB_CUT notification, 466–471MMC_VERB_PASTE notification, 465–471
__MethodProviderRegistration, 636Modus operandi, 44–46mofcomp command line executable, 260
MOF compiler (mofcomp.exe), 66–67, 261automatic registration of, 70–71command-line options of, 68–69
MOFEditor tool, 165MOFImagePath, 700MOFResourceName, 700Moniker, 511Moving item, 468–71MsgBox, 525, 539M_spLocalServices, 606Multilanguage MOF file, 260–62Multilanguage support, 241–44Multinamespace class positioning, 236–37
NName, 117
fully qualified, 145variable, 506–07
Name property, 601Namespace class positioning, 227–32, 237NamespacePath property, 353Namespace permission types, 88Namespace-related intrinsic events, 189Namespaces, 72, 108, 133–35, 149–50,
513, 573adding your own, 428–29applications and, 235–40browse for a, 141connecting to, 510–15, 519, 605create, 150, 151–52defining and using, 110–12delete, 150destination, 114localized, 335–38and schemas, 112–13, 234–35selecting, 546–48separate, 125WMI, 110
NameString key, 461Native code, 347
Tunstall_index.fm Page 780 Thursday, October 10, 2002 9:46 AM
Index 781
Netscape, 12, 13, 76Network, remote connection across, 553Network administration, 27Network bandwidth, 35Network infrastructure management, 180Network Interface Card (NIC), 33Network management stations, 36Network model, 105, 233Networks Working Group (NWG), 15NEW, 439Next method call, 275No Access, 43NODEs, 574Non-pure providers, 603Non-terminals, 576Normalization, 230–31Normal session, 692Notepad, 123, 502Notification of events, 51, 431, 450, 464,
647–54Notify method, 425NotifyStatus, 149Not_Null qualifier, 140NotToInstance, 118NotToSubclass, 119Novell, 14, 30NSAPI, 76
OObject, 560
accessing from object properties,300–304
creating, 276–81creating or updating, 620–25definition of, 10deleting, 281–83, 617–20enumerating, 273–76, 607–13getting, 272–73, 613–17getting a management, 348–56manipulating management, 746–53
querying for, 625–27updating, 280–81
ObjectGetOptions, 354–355ObjectGetOptions class, 354, 355Object groups, 40Object Identifiers (OIDs), 32, 42Object Linking and Embedding (OLE) method,
474Object Management Group, 159Object modeling, introduction to, 165–70Object models, 165, 200Object orientation, 78Object-oriented paradigm, 7Object paths, 270–72, 345, 348, 442
fully qualified, 352Object properties, manipulating, 293–99Object qualifiers, 136–39ObjectQuery object, 368Object properties, embedding objects in,
382–85ObjectPut delegate handler property, 389ObjectPutEventArgs, 389
__ObjectProviderRegistration, 627ObjectPutEventHandler, 389ObjectReady delegate handler property, 389ObjectReadyEventArgs, 389ObjectReadyEventHandler, 389Object reference, 272, 288ObjOutl, 559, 560ODBC adapter, 77OnErrorResumeNext, 521–22OnInitDialing message handler, 452OOA, 8OOD, 8OOP, 8Open Standards Interconnect (OSI) network
protocol stack, 19Open Systems Interconnect (OSI) protocol
stack, 30OpenTrace, event tracing, 722
Tunstall_index.fm Page 781 Thursday, October 10, 2002 9:46 AM
782 Index
Operating system requirements, 5–6Operations, 208–09Optimize queries, 625, 626Option Explicit, 502, 510Options property, 354Out-parameters, 292, 293, 371, 372, 373,
632, 634OUTPUT, 575Output, types of, 580Output switch, 590Overloading, 214
PParameter classes, 214PARAMETERS, 149Parent classes, 231Parents, 8, 169, 428, 670, 710Parse the object path, 616Part component objects, 134Password, 252, 513, 514, 575, 591Password property, 198, 400PATH, 575, 592Path of the shared directory, 349Performance counters, 670, 671, 732, 733Performance Data Helper (PDH) library,
339, 671Performing queries, 366–70Permanent consumers, 83–84Permission assignment, 85–88Persistent, 83PerUserInitialization property, 602Physical consumer, 83Physical model, 105, 233pObjParam parameter, 310, 609Policy, 51Policy model, 106Policy Working Group (PWG), 15Polling technique, 395Polymorphism, 215–16Positioning of classes, 227–32
Postconditions, 216Preconditions, 216Pre-OS Working Group (POWG), 16Presentation layer, 267Primary snap-in, 406, 407Primary snap-in registration, 460–62Private, 36Private enterprise subtrees, 41Private session, 693Privileged process, 53Privileges, 573, 574
security concerns with, 518which to deny or allow, 517
Procedural Component Interface, 49Process Software, 76Process Trace event tracing, 714, 725Programming language independence, 347Program statements, 508–10Progress delegate handler, 388ProgressEventArgs, 388
__Provider, 601__ProviderRegistration, 603__PropertyProviderRegistration, 659
ProgressEventHandler, 388Propagated qualifier, 132Properties, 99, 116, 155, 161, 174, 208, 214,
222, 335, 596adding, 151–52array object, 381–82authority, 400ClassName, 353ClassPath, 351default path, 353defining, 192–95enumeration of, 379event, 636–37inherited, 378initialization, 604–07instance, 627–29options, 354
Tunstall_index.fm Page 782 Thursday, October 10, 2002 9:46 AM
Index 783
properties, 351qualifier, 351system-provided, 370, 378WMI system, 130, 135–36
Properties property, 351Properties verb, 436, 448Property, 101, 166, 167, 596
delete a, 147PropertyDataCollection, 379Property context, 655–56Property flavor, 378Property handles, 341–42Property page, adding your own, 447–56Property provider registration, 659Property providers, 80Property qualifiers, 136–39Property sheet, refocusing an item’s,
456–58Property values, 293, 362, 377Proposed standard, 31Protocol, connectionless part of, 34Protocol Data Units (PDUs), 32ProvideEvents method, implementing, 638,
639, 640Provider classes, 147–49Provider code generator, 153Provider qualifier, 138Providers, 76–79, 98
built-in, 26developing an instance, 597–600event, 636–37event-trace, 695–713high-performance, 75initialization, 604–07instance, 627–29method, 629–30property, 654–56pure, 603registration, 600–603, 665types of, 79–81
Psychological requirements, of schemadesign, 161
Public, 36Pull providers, 595, 628Pure property, 602Pure providers, 603Push providers, 596, 603, 629, 660, 663PutInstance, 277, 279, 280PutInstanceAsync, implementing, 617, 620,
621, 622Put method call, 294Put methods, 361, 538PutOptions class, 362, 363
QQualifiers, 117–18, 240, 244, 537
custom, 119–20propagated, 132property, 136–39, 351static, 372user-defined, 120value, 374weak, 132
Queriesdata, 91–94event, 94–96performing, 283–86, 366–70
QueryAllTraces, event tracing, 688Query dialog box, 91, 145Querying, 625–27, 683–85, 688–92Query optimization, 366QueryPageFor, 449Query paste notification, 466QuerySupportLevels property, 628
RRange, 116Rational Rose, 159Read and write, 197ReadDWORD, 340–342
Tunstall_index.fm Page 783 Thursday, October 10, 2002 9:46 AM
784 Index
Read-only access, 36, 43Read qualifier, 120, 140Read/write access, 43RECORD, 573, 575Referenced class, 131Reference keyword, 131REFERENCES OF, 92, 94, 97, 237Refresher, 339, 340, 341Refresh method, 342–344Refresh verb, 436, 437RegHandle parameter, event tracing, 710RegisterTraceGuids, event tracing, 700Registration, 408
of application as event-tracing provider, 698–701
extension snap-in, 486–87instance provider, 627–29method provider, 636–37primary snap-in, 460–62property provider, 659provider, 600–603, 665WMI event, 737
RelatedObjectQuery class, 370Relationship Query, 370Relative path, 271, 272REM keyword, 505Remote connection, 553Remote invocation of a script, 554–55Remote Procedure Call (RPC), 49, 670Remove, 162Rename items, MMC snap-in, 463–65Requests for comments (RFCs), 19, 30Requirements specification document, 180Restricted, 119Result items, adding your own, 431–36, 470Result pane object, 412, 413, 421Retrieve class prototype, 91ReturnImmediately option, 358ReturnValue, 373Rewindable option, 358
Role, 53, 573Role setting, 569Root item, 421, 422–27Rule-generation based UML diagrams, 223–26Rules, 184–86, 222, 225Run-Time Type Information (RTTI), 467
SSafeupdate, 124Schema, 9, 155
checking design, 222–27class-based, 594, 597defining event class, 697–98design of, 156–57, 164–65, 179–204extended, 107–08, 160–62in MOF, 244–60namespaces and, 112–13naming, 186placement of, 234–35resource-hungry designs using, 175road map for design of, 172–75testing, 262–63using existing, 113
Schema queries, 96–97Scope, 117, 398Scope DATAITEM structure, 428Scope pane object, 410, 412, 413Scripting, 548–50
administration and, 495data creation, 540–41data deletion, 539–40data modification example, 536–39data retrieval, 527–32setting up for, 498vs. compiled language, 500
Scripts, 499–500debugging, 564–67deployment of, 552–53event-driven, 557execution methods, 555–56
Tunstall_index.fm Page 784 Thursday, October 10, 2002 9:46 AM
Index 785
interacting with WMI using, 510remote invocation of, 554running your first, 501–04
Script signing, 500Search facility, 546Search for a class icon, 141–43Security, 54–55, 84–88, 198, 327, 328,
329–35, 400, 401cloaking, 330, 335issues of, 515–19, 550, 663–66level of, 571
Security context, 269Security flags, 514Security Identifier (SID), 366Security indications, 53Security model, improvements to, 43SELECT clause, 91, 94–95, 96, 190, 286, 370Select Properties, 144SelectQuery class, 369Semantics, 498
errors in, 521Semisynchronous, 270, 323–35Semisynchronous calls, 304–09, 355, 536Semisynchronous events, writing application to
receive, 395–97Server applications, 76Server Explorer, 746–58Servername, 513Server property, 353Service layer, 49Services item, 434SetAsClass method, 353SetAsSingleton method, 353SetDefaultVerb, 448Set function, 30SetItem method, MMC snap-in, 452SetPropertyValue, 378SetRequest, 44, 45SetStatus method, 309–313, 609Settings classes, 192
SetVerbState, 448Severity property, 739Shared directory, 273
list of, 356path of, 349
Share level security, 86Simple Network Management Protocol
(SNMP), 11, 19, 25, 29acceptance of, 26advantages of, 46–47compliant protocol stack, 30disadvantages of, 47integrating with DMI, 59network management station, 30–32running over TCP/IP, 31security, 42–44standards of, 32–35structure of message on, 35traps, 38, 45
Singleton qualifier, 138, 154, 191, 195,199, 253
Sink, 309, 325, 327, 329Snap-in
design of, 416–19implementation of, 414–16
SNAPINMENUID macro, 440Software application life cycle, 162Software Development Kit (SDK), 4, 62, 65Software team leaders, 3Spawn, 279, 303, 359, 361, 604SpawnInstance method, 279, 289, 303, 540SP Characteristics, 53Spoofing, 42Standard Generalised Mark-up Language
(SGML), 20Standards, 31
SNMP, 32–35Standards bodies, 12Standard software applications, 164Start method, 392, 443
Tunstall_index.fm Page 785 Thursday, October 10, 2002 9:46 AM
786 Index
StartTrace, event tracing, 674, 675, 692Statements, program, 508–10States, 162, 208Static data, 101–02, 240, 287Static method calls, 271, 630Static qualifier, 140, 372, 599StatusObject property, 390Stop method, 392, 443Stopped delegate handler property, 394STDERR, 571STDIN, 571STDOUT, 571Stop, 685–86StoppedEventArgs, 395StoppedEventHandler, 394Strings, 271, 728Structured Management Information (SMI),
32, 41Structured Query Language (SQL), 84Subclassing, 229–31Subroutines
to display errors, 524use of, 522
Subscription, event, 644, 647, 753–58Subtrees, 41Support model, 106SupportsDelete property, 628SupportsEnumeration property, 628SupportsGet property, 628, 659SupportsPut property, 628, 659Support Working Group (SWG), 15Synchronous, 270SynOptics, 14Syntax, 497
errors in, 521System administration, 405, 493System and Devices Working Group
(SDWG), 16SystemClass, 149System group, 40
System manageability, 156–57System properties, 130, 135–36, 144System-provided properties, 370, 378System requirements, 4–6, 159, 181–85Systems administrators, 3Systems model, 105, 233
TTarget audience, 180Target string, 582TASK, 439Technical Development Committees
(TDC), 14Temporal correctness, 102Terminals, 576Testing, 561–64
MOF, 240schema, 262–63
Theme-aware, user interface, 487–91Thread execution, 312, 6403COM, 49Three-tiered model, 10–11Time-out, 396Timeout property, 355Timer events, 82–83, 98, 314, 319–21,
740, 741Time values, displaying, 532–33ToInstance, 118Toolbars, adding your own, 444–47TOP, 439ToSubClass, 118, 120Total cost of ownership (TCO), 60,164TRACE, 573, 574, 727TraceEvent, event tracing, 702TraceEventInstance, event tracing, 711TRACE_GUID_REGISTRATION, 700TRACEHANDLE, 685, 703, 725Trace instrumentation, 669TRACE_LOGFILE_HEADER structure, 724Trace Message, event tracing, 728
Tunstall_index.fm Page 786 Thursday, October 10, 2002 9:46 AM
Index 787
Transform files, 580Translatable, 119Transmission Control Protocol, 33, 40Traps, 38, 44, 81TRUE, 479Type, 101Type option, 362Type parameter, 448
UUnattended operation, 555Underscore character, 515Unified management framework, 57Unified Modeling Language (UML), 4,
159–60, 164, 220–21, 223–26common model in, 170–72in schema design, 165
Uninstall, 162Units qualifier, 249Universally Unique Identifier (UUID) qualifier,
119, 248Universal management model, 26–29UnloadTimeout property, 602Unsecured apartment, 327, 329UpdateItem, MMC snap-in, 443UpdateMenuState, MMC snap-in, 443UpdateOnly option, 363Updatesonly, 124UpdateToolbarButton, MMC snap-in, 446UpdateToolbarButton method, 446Use Cases, 165, 181–85USER, 575User and Security Working Group (USWG), 16User Datagram Packet (UDP), 33User Datagram Protocol, 40User interface, 413User level security, 86User model, 106Username property, 400, 513, 514, 591User-Security Model (USM), 43
VValue, 101, 117ValueMap, 291, 374Values, 291, 374Values qualifier, 291, 374Variables, 506VARIANT, CIM data type mappings, 295Variants, 506, 550–51VBScript, 496–98, 525
associations using, 541–42executing using, 542–43functions, 507
vbYesNo flag, 538Verbs, 436–38, 578–79, 592
renaming, 463–64Verbs array, 582VIEW, 439View-based access control model (VACM),
35, 36Visual Basic, 75Visual Basic Scripting, 494Visual C++ software engineers, 3Visual Studio.NET software engineers, 3Visual Studio snap-in wizard, 449, 460, 478,
483, 486Visual styles, user interface, 487
WWAN/MAN infrastructure, 180WBEM_FLAG_CREATE_ONLY, 621WBEM_FLAG_UPDATE_ONLY, 621WBEM_FLAG_USE_AMENDED_QUALIFIERS,
338WBEM_FLAVOR_ORIGIN_LOCAL,
296–297WBEM_FLAVOR_ORIGIN_PROPAGATED,
296–297WBEM_FLAVOR_ORIGIN_SYSTEM, 296–297WBEM Interoperability Working Group
(WBEMING), 16
Tunstall_index.fm Page 787 Thursday, October 10, 2002 9:46 AM
788 Index
Weak qualifier, 132Web-Based Enterprise Management (WBEM),
1, 6, 16–17, 22, 25, 26, 28core objectives of, 6–7standard components of, 60–61
Web-Based Enterprise Management Initiative (WBEMI), 60
Websites, accessing, 471–73wbemtest, 274WHERE clause, 91, 95, 96, 577–78, 592, 626While loop, 395Wide Area Networks (WANs), 6Wigwams, 574Windows Driver Model (WDM), 18, 72Windows Installer, 163–64, 235Windows Management Instrumentation
(WMI), 1, 5, 18, 23, 26, 72–75, 98,110, 242, 349, 366, 493, 593
architecture of, 268basic framework of, 73–75CIM repository, 72control of, 67–69core components of, 64–72error messages, 313–14Event Registration facility of, 315, 738Event Viewer tool, 735, 736, 740installing, 61–64log files, 71–72making corrections to, 397–401management application, 75–79method-related methods in, 375permission assignment, 85–88scripting data retrieval, 727–32security, 84–88system-provided properties of, 370systems properties, 130, 135–36topology design using, 175–79using a script to interact with, 510and Windows installer, 163
Windows Management Instrumentation Command-line (WMIC), 494, 549, 567–68, 571, 573
interacting with, 575–77looping commands, 579–80in non-interactive mode, 589–91
Windows Management Instrumentation Tester, 69–70
Windows Management Service (WinMgmt.exe), 65–66, 73–75
Windows 98, 62–64, 75, 84, 85, 163Windows NT, 84, 90, 163, 670Windows 98, 498Windows OS, 3Windows Script Debugger, 561–64Windows Scripting Host (WSH), 21, 496,
498–99, 501object model, 508
Windows Software Trace Preprocessor (WPP), 727
Windows 2000, 90, 163, 268, 339, 498, 670, 672
Windows XP, 75, 235, 268, 487, 489, 498, 532–33, 557, 568, 670, 672, 673, 713, 729
namespaces in, 111WINMGMTS, 511, 512, 550Win32, 11, 160–62, 163, 265
Video Controller class, 364WITHIN clause, 95, 391Wizards, 152–53WMI AFI, 241WMI CIM Studio, 241WMI Query Language (WQL), 69, 82, 83,
84, 88–97, 98, 368, 396, 594event query, 321extended, 268flexible, 207object queries, 369queries tool, 144
Tunstall_index.fm Page 788 Thursday, October 10, 2002 9:46 AM
Index 789
WMI Tester, 88Wordpad, 123, 502World Wide Web consortium (W3C), 16WqlEventQuery, 395
__Win32Provider, 601WqlObjectQuery, 369WriteLine statement, 354Write only, 198Write qualifier, 140, 255WSHRemote, 554
XXML (eXtensible Markup Language), 7, 17,
20–21, 23
ZZero Administration for Windows (ZAW)
initiative, 60
Tunstall_index.fm Page 789 Thursday, October 10, 2002 9:46 AM
Tunstall_index.fm Page 790 Thursday, October 10, 2002 9:46 AM