MAPRobot

Customer: ITAM professionals

Period: 2015

Technologies: .Net, C#, MapToolkit, SQL, WinForms

Context

Microsoft Assessment and Planning Toolkit (MAP) is a freely available, agentless tool to scan your IT infrastructure. The tool is used worldwide by many IT professionals because it can rapidly be installed and provides valuable information even on top of existing asset management systems.

MAP has one big disadvantage. Because it is agentless, MAP takes a snapshot of the infrastructure at every scan. Devices that are turned off or not connected to the network at the time of the scan, are not included in the inventory. So scans need to be repeated regularly to complete the picture of the IT environment.

MAP however has no API, scheduler, or command-line support. That means infrastructure scans cannot be automated or scheduled. You have to painstakingly complete the Inventory and Assessment Wizard every time you want to take a snapshot of the infrastructure. This is prone to errors and quickly becomes very time-consuming.

Mission

Build a solution to schedule MAP scans.

Solution

MAPRobot solves MAP's problem. It allows you to prepare and store the settings of the Inventory and Assessment Wizard as 'configuration files', and execute them from the command-line or with a task scheduler. This way scans can easily be repated without having to go through the wizard.

MAPRobot also facilitates scanning different parts of the environment using exactly the same settings. Open an existing configuration file in the MAPRobot editor or a text editor, make changes to IP range or Active Directory domain, and save the new configuration. This makes MAP a valuable tool e.g. for ISP to assess their hosted environments.

Because MAP has no API or documented class library, the only useful way to automate is by UI automation. This means MAPRobot works with MAP like any other user would: by entering text and selecting controls on the screen. MAPRobot makes use of the .Net System.Windows.Automation namespace to accomplish this.

MAPRobot has two modes:

  • Interactive: launching MAPRobot without command parameters brings up a WinForm that almost exactly mimics MAP's Inventory and Assessment Wizard. MAP users easily find their way in this familiar interface to create or edit, and save a 'configuration file'.
  • Automated: provided the path to a configuration file as command parameter, MAPRobot will launch MAP and 'playback' the settings in the configuration file before launching a scan. This command can then be scheduled to automate regular scans.