HVTools (formerly VMM Tools) is the swiss-army knife for SCVMM administrators. It is a lightweight application designed to perform a complete SCVMM inventory.
It reports crucial information about your SCVMM environment, including:
- Clusters and Hosts
- Virtual Machines
- Storage Arrays and Storage Pools
- Networks and VLANs
- Workload health and much more
The elegant table views make it easy to use, find gaps, and identify improvements in your SCVMM environment. It is an excellent tool for gaining clearer insight, general troubleshooting, capacity planning, and reporting.
Note
This is the Public Edition (PE) of HVTools, as it was a minimum viable product (MvP) back in the day.
- Enter SCVMM administrator privileged credentials in the Username and Password fields.
- Enter the SCVMM instance ID address in the third field (e.g.,
scvmminstancefqdn.contoso.com) and click Login. - When the inventory is complete, the HVTools report will automatically open.
- You can click
File$\rightarrow$ Save Asto save the complete inventory to an Excel CSV. -
Optional: By selecting desired rows and performing
CTRL + C, you can copy/paste data directly into Excel.
Note
Designed for Microsoft System Center Virtual Machine Manager 2016.
- Change table column creation to using arrays and foreach loops for elegant creation.
- HTML reporting.
- Colourisation (Red-Amber-Green)
- (Optional) ServiceNow integration using service hooks.
Note
These additional features were incorporated into the propietary edition v2.0.0 of HVTools back in 2024.
- Codesigned compiled file using Sectigo certificate.
- Added VMM server name to title bar form of report.
- Removed empty
var filename. - Fixed tab name to Cluster Storage Volumes.
- Clipboard copy/paste will now include headers.
- Enabled datagrid clipboard
CTRL + Cof selected rows (configuredRunspacePoolapartmentState asSTA). - Removed redundant 2nd form
runspace.closecalls.
- Fixed exit bug where runspaces would keep the process open; app now exits cleanly.
- Fixed bug where the Login button would remain disabled post-inventory completion.
- New Feature: Added Zombie VHDs tab to report orphaned VHD/VHDX files in SCVMM.
- Appended new column
Locationin Virtual Machines table (contains VHD/VHDX path). - Removed automatic export of Virtual Machines table.
- ZIP multi-report saving finalized; added cleanup feature.
- Rounded off all numbers to a single decimal point.
- Added experimental Save to ZIP feature. Exports all tables into a temp path before ZIPing to the desired save path via dialog.
- New Feature: Added Cluster storage volumes tab (position 7).
- Removed
$script:powershell = [powershell]::Create()from line 2322.
- Cosmetic update: Rounded large capacity numbers to 2 decimal places using
[math]::Round($var,2).
- Cosmetic update: Added About/Help menu in 2nd results form.
- Added reset counter for clusters
$cinClusterNetworksforeach loop.
- Added tab filter for all 8 datagrids.
- Major Update: Added Clusters, Hosts, Storage Pools, Storage Arrays, Cluster Disks, Networks, and Cluster Networks!
- Added Hosts feature (including data table, tab, foreach loop, and data grid).
- Re-enabled
maxthreadsto all available processor count on system. - New Feature: Added Cluster Info (2nd table for Clusters).
- Fixed unprotected memory exceptions by removing
Add-OutputBoxLinecalls withinForEachloops (preventing RichTextBox overload).
- Added more tables and tabs for comprehensive information including clusters, hosts, storage, and networks.
- Attempted to resolve unprotected memory leak by calling
$script:powershell.EndInvoke($script:handle)at every exit function. - Changed
$maxthreadsto3to resolve unprotected memory exceptions. - Added extra tabs in preparation for future releases.
- Re-enabled
maxthreads. - Updated color scheme.
- Attempted to resolve memory leak by casting
$VMSto an array. - Fixed VLAN display issue by changing column type from
Int32toString. - Reduced
$maxthreadsto static3to prevent crashes during multi-user RDP sessions. - Enhanced GUI, streamlined tab view, and changed datagridview color to
moccasin. - Fixed 2nd form color.
- Fixed minor bugs regarding table column types (Memory, Dynamic Memory, and vCPU).
- Major GUI updates: Converted array to Data Grid View and code-signed the application using Sectigo certificate.
- Implemented multi-threading via Runspace Pools.
- Added Out-Grid GUI view.
- Performance improvements.
- Switched to using Arrays instead of flat memory.
- Added static/dynamic memory optimizations.
Hugo Remington