Implementing MI Provider (6) – Build, Register, and Debug

This blog discusses how to build, register and debug MI provider. Build To build MI provider, open visual studio 2012, create an empty Visual C++ project named “process”, set type to DLL, and add all generated files into the project. Open project property dialog box, navigate to linker page, click input option, Set Module Definition…


Implementing MI Provider (5) – Implement

As discussed in Implementing MI Provider (4) – Generate Code (continute), Convert-MofToProvider.exe tool generates <class name>.c file for each target class, which contains stub functions to place the business logic of each operation, such as enumerate/get/delete/modify/new/<extrinsic methods>. This blog discusses how to implement stub functions of normal (instance) classes, while association and indication class will be discussed…


Implementing MI Provider (4) – Generate Code (continute)

As described in Implementing MI Provider (3), Convert-MofToProvider.exe tool generates a set of code files, including schema.c, module.c, WMIAdapter.c, Provider.DEF, <class name>.h, and <class name>.c. There is one header file for each target class and all of it’s ancestor class(es) if have. And one c file for each target class (specified by -ClassList parameter). Header files…


Physical Computer System View Profile

Out-of-band management is a critical tool within a datacenter (also useful to small/medium businesses).  Essentially, it enables one to remotely manage a computer system independent of the operating system: system is powered off, operating system is not functioning, or operating system is not installed yet.  For Servers, there are really two standards adopted (some newer…

0

Standards Based Identity and Role Management using PowerShell

A year ago I published an article and PowerShell module to simplify managing Standards-Based devices (specifically CIM and WS-Man). The use cases focused around setting the boot order, changing power state, and getting software (firmware) and hardware inventory information. The module should work against any SMASH or DASH capable hardware that implements the specific Management…

0

Introducing new Management Infrastructure (MI) API

In Windows 8/Windows server 2012 we introduced new Management Infrastructure (MI) API for writing WMI provider and client applications. This blog post will explain our goals for “Improving developer Experience”  and WHY  we did a new API for client and provider, instead of updating existing WMI API. We will continue to cover “HOW” to write…


Implementing MI Provider (3) – Generate Code

In blog Implementing MI Provider (2), we discussed schema definition of MI provider. Upon the schema ready, you can run Convert-MofToProvider.exe tool to generate MI provider skeleton code.   Where to install Convert-MofToProvider.exe tool? Install windows 8 SDK first, then you could find the tool under SDK installation directory. For example, the file path on my desktop is…


Implementing MI Provider (2) – Define Schema

Define Schema To implement a MI provider, the first step is to model the management data, i.e., to define the schema of data. The schema has to be defined in DMTF’s Managed Object Format (MOF), which is very similar to WMI MOF format except partial syntax of WMI MOF is not compliant with DMTF MOF. Definition of…


Implementing MI Provider (1) – Overview

Blog Standards-based Management in Windows Server “8” gives overview of standard-based management and architecture of the new management stack introduced in Windows 8 and Windows Server 2012. “Implementing MI Provider” series blogs are about to discuss how to implement MI provider step by step, including a brief tutorial on implementing a MI provider; an introduction to MI…


How to Implement a Profile Registration Provider

Introduction The DMTF standard uses profiles to perform namespacediscovery. As an implementer of aprofile, you need to register a profile object that points to thenamespace of the implementing class. The profile object must be implemented under the root/interop namespace. Profile Registration MOF Files http://www.dmtf.org/sites/default/files/standards/documents/DSP1033_1.0.0.pdf The above document fully describes the necessary profileclasses that the provider…

0