MSG 334 Creating Exchange Administrative Scripting for the Non-Programmer Susan Hill Lead Programmer Writer Microsoft Corporation.

Slides:



Advertisements
Similar presentations
WEB401 Security Practices for Web Services (Part 2) Keith Ballinger Program Manager XML Messaging Microsoft Corporation.
Advertisements

1 Windows, PowerShell, And WMI Unveiling Microsoft's Best Kept Secret Ben Pearce Premier Field Engineer Microsoft SVR387.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
MSG302 Deploying Exchange Server Overview Sasa Juratovic Consultant Microsoft Ltd.
Monad: Microsoft’s Next Generation Command Shell Thomas Lee Chief Technologist QA plc.
Tech·Ed North America /19/2017 7:21 AM
Deploying Visual Studio Team System 2008 Team Foundation Server at Microsoft Published: June 2008 Using Visual Studio 2008 to Improve Software Development.
Microsoft Office Project 2003 Resource Kits James Scott & Roy Riley Technical Content Development Microsoft Corporation.
OFC324 Microsoft Project Server: Putting Enterprise Project Management (EPM) To Work Sam Brooks
MSG328 Anti-Spam in Exchange2003 Max Ciccotosto Program Manager - Exchange Microsoft Corporation.
Enterprise Reporting with Reporting Services SQL Server 2005 Donald Farmer Group Program Manager Microsoft Corporation.
DAT304 Leveraging XML and HTTP with Sql Server Irwin Dolobowsky Program Manager Webdata Group.
300MM active users worldwide Worldwideleadership.
OFC302 Building Smart Document Solutions in Word & Excel Martin Sawicki Lead Program Manager.
DBA230 Introducing SQL Server 2000 Reporting Services Jason Carlson Product Unit Manager SQL Server Microsoft Corporation.
DEV317 Integrating Extensible Business Graphics into Enterprise Applications using Visio 2003 Mai-lan Tomsen Bukovec Program Manager.
OFC 322 Building Office Research Web Services: Exposing Corporate Data Through Office Brian Jones Program Manager Authoring Services Martin Sawicki Lead.
WMI Scripting. What Is WMI? WMI is the core management-enabling technology built into Windows 2000, Windows XP, and the Windows Server 2003 family of.
CON 307 Developing Manageable WCF Services Chris Peiris | Avanade Rory Primrose | Avanade
OFC304 Excel 2003 Overview: XML Support Joseph Chirilov Program Manager.
How to Add WMI Interfaces to SCSIPort and Storport Miniports
OFC 200 Microsoft Solution Accelerator for Intranets Scott Fynn Microsoft Consulting Services National Practices.
ADM421 Scripting Group Policy Operations BJ Whalen Program Manager Windows Server Microsoft Corporation.
DEV290 Building Office Solutions with Visual Studio Eric Carter Lead Developer Developer Platform & Evangelism Microsoft Corporation.
ADM 331 Administrative Scripting for IIS 6.0 Using WMI Alexis Eller Program Manager Internet Information Services (IIS)
SEC303 Assessing and Managing Privacy in the Enterprise JC Cannon Privacy Strategist.
MSG330 Developing with Microsoft® Exchange Susan Hill Lead Programmer Writer Microsoft Corporation.
Exploiting New Capabilities for Search And Organization Kerem Karatal DAT307 Lead Program Manager Microsoft Corporation.
OFC 303 Advanced Word XML: Customer-Defined Schemas Brian Jones Program Manager Authoring Services.
Slide 2 The Microsoft Office Project 2003 Software Development Kit Jim Corbin Programmer Writer Office Developer Documentation Microsoft Corporation Uma.
OFC335 Microsoft Office Word 2007 XML Programmability: True Data/View Separation and Rich Eventing for Custom XML Tristan Davis Program Manager Microsoft.
DEV325 Deploying Visual Studio.NET Applications Billy Hollis Author / Consultant.
DEP362 Automated Deployment Services Paul Sutton Program Manager.
OFC290 Information Rights Management in Microsoft Office 2003 Lauren Antonoff Group Program Manager.
DEV339 Best Practices for Debugging Visual Studio.NET Applications Keith Pleas Architect, Guided Design
OFC 308 Advanced Word XML: The WordML Schema and Bringing Everything Together Brian Jones Program Manager Authoring Services.
ADM313: Monitoring Active Directory with MOM Paul Reiner Program Manager Directory Services.
OFC 307 Office 2003 Solution Case Studies Ray Stephenson Smart Client Technical Evangelist
Slide 1.NET Development for Project 2003 Samples from the Project 2003 SDK Jim Corbin Programmer Writer Office Developer Documentation Microsoft Corporation.
DEV337 Modeling Distributed Enterprise Applications Using UML in Visual Studio.NET David Keogh Program Manager Visual Studio Enterprise Tools.
Paul Butterworth Management Technology Architect
DEV333 Instrumenting Applications for Manageability with the Enterprise Instrumentation Framework David Keogh Program Manager Visual Studio Enterprise.
MBL206 A First Look at the Microsoft Location Server (MLS) Steve Lombardi Technical Product Manager MapPoint Business Unit Microsoft Corporation.
ADM363 Chapter Two – SMS 2003 Migration and Interoperability Paul Barcoe-Walsh Product Manager Enterprise Management Division Microsoft.
EBZ 321 Extending CMS 2002 Publishing Processes Scott Fynn Microsoft Consulting Services National Practices.
DEV303 ASP.NET: Leveraging Visual Studio.NET For Web Projects Tony Goodhew Product Manager Microsoft Corp.
DAT 332 SQL Server 2000 Data Transformation Services (DTS) Best Practices Euan Garden Product Unit Manager SQL Server Development Microsoft Corporation.
DEP331 Migrating to Windows XP Mike Coleman Lead Product Manager, Windows XP Microsoft Corporation.
Module 3: Configuring Mailbox Server Roles. Overview Overview of Exchange Server 2007 Administration Tools Implementing Mailbox Server Roles Managing.
EBIZ327 InfoPath and BizTalk Server 2004 Scott Woodgate Jupiter Product Planner.
MSG331 Exchange Server 2000/2003 Software Development Kit Susan Hill Lead Programmer Writer Microsoft Corporation.
DAT300 SQL Server Notification Services: Application Development Ken Henderson Technical Lead, SQL Server Support Microsoft Corporation
DEV395 No Touch Deployment for Windows Forms Jamie Cool Program Manager.NET Client Microsoft Corporation.
DBA331 Managing a Microsoft SQL Server 2000 Reporting Services Implementation Brian Welcker Group Program Manager SQL Server Microsoft Corporation.
EBZ303 Building Applications Using BizTalk Human Workflow Services Nagender Vedula Group Program Manager E-Business Server Group Microsoft Corporation.
Windows Forms in Visual Studio 2005: An in-depth look at key features Name: Joe Stegman Title: Lead Program Manager Session code.
EBIZ302 Jupiter Business Process Automation and Web Services David Fong Program Manager.
DEV332 Programming for the Middle Tier in Visual Basic.NET Billy Hollis Author / Consultant.
DAT200 Microsoft® ADO.NET for ADO Classic Developers: Introducing ADO.NET Jackie Goldstein Renaissance Computer Systems
OFC311 Developing Microsoft Office InfoPath 2003 Solutions: Technical Drilldown Part 1 Tudor Toma Group Program Manager Office Microsoft Corporation.
EBIZ312 Connecting Host Systems to Microsoft Technologies Paul Larsen Aaron Grady Microsoft Corporation.
OFC320 Building EPM Solutions with Microsoft Project Server Ted Dinklocker Program Manager Microsoft Corp.
DEV291 Microsoft CRM Jason Hunt Technical Product Manager.
Building Enterprise Applications Using Visual Studio®
Office 365 Development July 2014.
TechEd /15/2019 8:08 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Visual Studio 2005 Tools For Office: Creating A Multi-tier Application
2/27/2019 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
Windows Forms in Visual Studio 2005: An in-depth look at key features
Presentation transcript:

MSG 334 Creating Exchange Administrative Scripting for the Non-Programmer Susan Hill Lead Programmer Writer Microsoft Corporation

Agenda Overview of WMI Architecture Key Features Code Samples WMI in Exchange Server 2003

Windows Management Instrumentation (WMI) Microsoft’s implementation of WBEM Uniform access to management information Most Exchange 2003 monitoring is done through WMI

Overview Of WMI Based on Distributed Management Task Force Standards – CIM, WBEM Designed to reduce TCO of Windows Systems Extensible, object-oriented API Enables system-wide and application- level observation and control Consistent schema, queries, methods, events, and API

WMI Architecture WMIConsumers RegistryPerformanceCounters Other WMI ProvidersExchangeDirectory WindowsManagementInstrumentationService

How WMI Works in Exchange 2003 Server Consumer calls a WMI service Service authenticates the client Service passes call to the Exchange provider Provider queries the system for the information Provider returns information back to client

Key Features of WMI API accessible from multiple programming languages Remote administration Discoverability and navigation Query capability Event publication and subscription

Multiple Languages C++ Visual Basic JScript VBScript C# Perl …

Remote Administration No different than local administration Allows for enterprise management from a single computer

Discoverability and Navigation Enumerate Classes Tells you what objects are available Associations Define the relationships between classes Can be traversed

Query Capability Data is stored in a relational database WQL – SQL-style language Select * from ExchangeServerState where ServerState=3

Eventing Clients subscribe for events No internal event mechanism needed Events can be “keyed” off of: Instance Creation, Modification, Deletion

What’s New in WMI for Exchange new classes Message Tracking Queue Management Public Folder Management Mailbox MAPI Table Management Full list in the Exchange 2003 SDK on MSDN

Skeleton of a WMI program Get the WMI locator object Gain the root interface microsoftexchangev2 Query the provider Can use WSQL Interpret your results

VBS – Public Folder Names Set oLocator = CreateObject("WbemScripting.SWbemLocator") Set oServices = oLocator.connectServer("localhost", "root\microsoftexchangev2") Set oPFs = oServices.ExecQuery("select * from exchange_publicfolder”) For each oPF in oPFs WScript.Echo(oPF.name) Next

VBS – Create Public Folder Set oLocator = CreateObject("WbemScripting.SWbemLocator") Set oServices = oLocator.connectServer("localhost", "root\microsoftexchangev2") 'get the mapi folder tree set oTLHs = oServices.ExecQuery("select * from exchange_foldertree where mapifoldertree = true") for each oTLH in oTLHs 'there is only one mapi TLH szRootFolderUrl = oTLH.RootFolderUrl next 'create a public folder under the mapi folder tree Set oPF = oServices.Get("Exchange_PublicFolder").SpawnInstance_() oPF.Name = "WMI Public Folder" oPF.ParentFriendlyUrl = szRootFolderUrl oPF.Put_ wscript.echo("done.")

VBS – Mailbox Table Set oLocator = CreateObject("WbemScripting.SWbemLocator") Set oServices = oLocator.connectServer("localhost", "root\microsoftexchangev2") set oLogins = oServices.ExecQuery("select * from Exchange_Logon") for each oLogin in oLogins WScript.Echo(oLogin.LoggedOnUserAccount & " " & oLogin.ClientVersion) Next wscript.echo("done.")

VBS Programs Calling WMI demo demo

JScript – Message Tracking var oLocator = new ActiveXObject("WbemScripting.SWbemLocator"); var oServices = oLocator.connectServer("", "root\\microsoftexchangev2"); var szQuery = "select * from exchange_messagetrackingentry"; var e = new Enumerator(oServices.ExecQuery(szQuery)); var oMT = e.item(); var e = new Enumerator(oMT.Properties_); for (; !e.atEnd(); e.moveNext()) WScript.Echo (e.item().Name + " = " + e.item().Value);

JScript Program Calling WMI demo demo

C# Get Exchange DC public class WMICommon { public WMICommon() {} ~WMICommon() {} public string GetDC() { ManagementObjectSearcher searcher = new ManagementObjectSearcher(); string DCName = ""; ManagementScope scope = new ManagementScope("root\\microsoftexchangev2"); System.Management.ObjectQuery query = new System.Management.ObjectQuery("select * from Exchange_DSAccessDC whereType = 0"); searcher.Scope = scope; searcher.Query = query; foreach (ManagementObject configDC in searcher.Get()) { DCName = configDC["Name"].ToString(); } searcher.Dispose(); } return DCName;

C# Program Calling WMI demo demo

Additional Information Good WMI Intro Article gwmi.htm Exchange Server 2003 WMI Exchange Server 2003 SDK Documentation

Ask The Experts Get Your Questions Answered 11:00 Friday morning

Community Resources Most Valuable Professional (MVP) Newsgroups Converse online with Microsoft Newsgroups, including Worldwide User Groups Meet and learn with your peers

Suggested Reading And Resources The tools you need to put technology to work! TITLE Available Microsoft® Exchange Server 2003 Administrator's Companion: /24/03 Active Directory® for Microsoft® Windows® Server 2003 Technical Reference: Today Microsoft Press books are 20% off at the TechEd Bookstore Also buy any TWO Microsoft Press books and get a FREE T-Shirt

evaluations evaluations

© 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.