A powerful Windows VM manager with a clean GUI — no command line required.
Built on Microsoft Hyper-V. Supports guest OSes from Windows 1.0 all the way to Windows 10 and Linux, with both Legacy BIOS and UEFI firmware.
Created for personal use and YouTube content — not open source at this time.
https://sonicfantech.org/Site/CobvuzVirtualDownload/
- What is Cobvuz Virtual?
- Features
- Supported Guest Operating Systems
- Screenshots
- Requirements
- How to Build
- Firmware Setup
- Project Structure
- Architecture & DLLs
- How It Works
- Roadmap
- License & Usage
Cobvuz Virtual is a full GUI virtual machine manager for Windows that wraps Microsoft's built-in Hyper-V hypervisor. Instead of using Hyper-V Manager or PowerShell commands, Cobvuz Virtual gives you a clean, modern dark-themed interface to create, configure, and run virtual machines — all with point-and-click simplicity.
It supports an unusually wide range of guest operating systems, from ancient DOS and Windows 1.0 all the way up to modern Windows 10 and Linux distributions. This is made possible through dual firmware support — SeaBIOS for legacy OSes and OVMF (UEFI) for modern ones — and the raw power of Hyper-V running underneath.
This project was built from scratch in C++17 using the Win32 API with no third-party UI frameworks, making it lightweight and fast. The backend is split across three custom DLLs for clean modularity.
- Create Virtual Machines through a guided 6-step wizard — no manual config required
- Start, Stop, Pause, Resume, and Save VM state directly from the main window
- Delete VMs with a confirmation prompt, cleaning up all associated files
- View all VMs in a list with live columns for Name, OS, State, RAM, CPU count, and Firmware type
- VM state tracking — Running, Stopped, Paused, Saved, and Error states shown at a glance
The wizard walks you through every setting before creating your VM:
| Step | What You Configure |
|---|---|
| 1 – Name & OS | VM name, description, and guest OS type (auto-suggests firmware) |
| 2 – Hardware | CPU core count (1–32), RAM in MB (256 MB – 128 GB), Video RAM |
| 3 – Storage | Virtual hard disk size (GB), disk path, optional boot ISO file |
| 4 – Network | Hyper-V virtual switch selection, or no networking |
| 5 – Firmware | Legacy BIOS (SeaBIOS) or UEFI (OVMF), Secure Boot toggle |
| 6 – Summary | Full review of all settings before VM creation |
Cobvuz Virtual is one of the few GUI frontends to offer true dual firmware selection per VM:
- Legacy BIOS via SeaBIOS — open-source BIOS implementation, perfect for DOS, Windows 9x, and Windows XP
- UEFI via OVMF — Open Virtual Machine Firmware, required for modern OS installs with GPT disks
The wizard automatically suggests the correct firmware type based on the OS you select — no guessing required.
- Automatically creates dynamically expanding VHDX files (efficient, only grows as used)
- Custom disk path and filename selection
- ISO attachment for OS installation
- Disk sizes from 1 GB up to 65,536 GB
- Lists all existing Hyper-V virtual switches
- Supports External, Internal, and Private switch types
- Option to run a VM with no network adapter
- Fully GUI-driven — zero command line interaction needed
- Dark theme throughout with a custom color scheme (deep navy + accent blue)
- DPI aware — scales correctly on 4K/HiDPI monitors
- Dark title bar via Windows 11 DWM dark mode
- File browser dialogs for ISO and VHDX path selection
- Settings panel to change where VMs are stored
- Status bar showing current operation result
- About panel with version info
- Built in C++17 targeting x64
- Pure Win32 API — no MFC, Qt, wxWidgets, or Electron
- Three modular custom DLLs (see Architecture & DLLs)
- Multi-threaded VM operations (start/stop run on background threads, never freeze the UI)
- VM configs stored as simple
.cvmkey-value files alongside VHDX disks
| Guest OS | Firmware | Notes |
|---|---|---|
| Windows 10 (32 & 64-bit) | UEFI (OVMF) | Best experience |
| Windows 8.1 (32 & 64-bit) | UEFI (OVMF) | Works great |
| Windows 8 (64-bit) | UEFI (OVMF) | Works great |
| Windows 7 (32 & 64-bit) | Legacy or UEFI | Both firmware types work |
| Windows Vista (32 & 64-bit) | Legacy (SeaBIOS) | Recommended |
| Windows XP (32-bit) | Legacy (SeaBIOS) | Classic, works well |
| Windows 2000 | Legacy (SeaBIOS) | Stable |
| Windows ME | Legacy (SeaBIOS) | Low RAM (128–256 MB) |
| Windows 98 SE | Legacy (SeaBIOS) | Low RAM (64–128 MB) |
| Windows 95 | Legacy (SeaBIOS) | Very low RAM (16–64 MB) |
| Windows 3.x | Legacy (SeaBIOS) | 4–16 MB RAM |
| Windows 1.0 | Legacy (SeaBIOS) | 1–4 MB RAM, historical |
| Ubuntu / Debian / Fedora | UEFI or Legacy | Both work fine |
| Arch Linux | UEFI (OVMF) | Recommended |
| CentOS / RHEL | UEFI or Legacy | Both work |
| MS-DOS / FreeDOS | Legacy (SeaBIOS) | 16–32 MB RAM |
| Other Linux | UEFI or Legacy | Depends on distro |
Note on Windows 11: Windows 11 requires TPM 2.0. Hyper-V Generation 2 VMs can emulate a virtual TPM, but full Windows 11 guest support is outside Cobvuz Virtual's current scope. Windows 10 is the recommended modern Windows guest.
Screenshots will be added as development progresses.
| Requirement | Details |
|---|---|
| OS | Windows 10 Pro / Enterprise / Education, or Windows 11 Pro+ |
| Architecture | 64-bit (x64) only |
| CPU | Intel VT-x or AMD-V enabled in BIOS/UEFI settings |
| RAM | Host: 8 GB+ recommended |
| Hyper-V | Must be enabled (comes free with Windows Pro) |
| Privileges | Must run as Administrator |
| Requirement | Details |
|---|---|
| IDE | Visual Studio 2022 v17 or VS 2026 v18 |
| Toolset | MSVC v143 (included with VS 2022/2026) |
| C++ Standard | C++17 |
| SDK | Windows 10 SDK 10.0+ |
- Enable Hyper-V on your machine (see docs/SETUP.md)
- Open
CobvuzVirtual.slnin Visual Studio - Set configuration to Release | x64
- Press Ctrl+Shift+B to Build Solution
- All four projects build automatically in the correct order:
VMStorage.dll→FirmwareManager.dll→HyperVBridge.dll→CobvuzVirtual.exe
- Output goes to
x64\Release\
See docs/SETUP.md for the full guide including Hyper-V setup, virtual switch creation, and firmware file placement.
Cobvuz Virtual requires two open-source firmware files that are not bundled with the project. Download them once and place them in the firmware\ folder next to the EXE.
SeaBIOS is a free, open-source implementation of the x86 legacy BIOS standard.
Download:
- Official site: https://www.seabios.org/downloads/
- Pre-built binary: Download the latest
seabios.binfrom the releases page - Alternative: Get
bios.binfrom a QEMU for Windows installation (C:\Program Files\qemu\)
Rename the file to seabios.bin and place it at:
<your build output folder>\firmware\seabios.bin
OVMF is the open-source UEFI implementation from the TianoCore project.
Download option 1 — TianoCore official:
- https://www.tianocore.org/ovmf/
- Download the latest OVMF package and extract
OVMF.fd
Download option 2 — From QEMU for Windows (easiest):
- Download QEMU for Windows: https://www.qemu.org/download/#windows
- Install it (or just extract the ZIP)
- Find
OVMF.fdinside the QEMU folder (usuallyC:\Program Files\qemu\) - Copy that file to your firmware folder
Download option 3 — From EDK2 releases on GitHub:
- https://github.com/tianocore/edk2/releases
- Look for
edk2-stablereleases → downloadOVMF-X64-*.zip
Place it at:
<your build output folder>\firmware\OVMF.fd
After downloading both files, your output directory should look like this:
x64\Release\
CobvuzVirtual.exe
HyperVBridge.dll
FirmwareManager.dll
VMStorage.dll
firmware\
seabios.bin ← SeaBIOS for legacy VMs
OVMF.fd ← OVMF for UEFI VMs
Both firmware files are validated on first use by FirmwareManager.dll. If either is missing or corrupt, Cobvuz Virtual will warn you when creating a VM with that firmware type.
CobvuzVirtual/
│
├── CobvuzVirtual.sln Visual Studio solution (open this)
├── CobvuzVirtual.vcxproj Main EXE project file
├── README.md This file
├── LICENSE Proprietary license
│
├── src/ Main application source files
│ ├── main.cpp Entry point, COM init, message loop
│ ├── AppTheme.cpp Dark theme colors, fonts, GDI helpers
│ ├── VMConfig.cpp VM config serialisation (.cvm files)
│ ├── MainWindow.cpp Main window, VM list, toolbar, layout
│ ├── VMCreationWizard.cpp 6-page VM creation wizard
│ ├── SettingsPanel.cpp App settings dialog
│ ├── AboutPanel.cpp About dialog
│ └── VMDetailPanel.cpp VM detail/info panel
│
├── include/ Header files
│ ├── stdafx.h Precompiled header (Windows, STL)
│ ├── AppTheme.h
│ ├── VMConfig.h VMConfig struct, FirmwareType, VMState enums
│ ├── MainWindow.h
│ ├── VMCreationWizard.h
│ ├── SettingsPanel.h
│ ├── AboutPanel.h
│ └── VMDetailPanel.h
│
├── resources/
│ ├── resource.rc Version info, manifest embedding
│ └── CobvuzVirtual.manifest UAC elevation + DPI awareness + Common Controls v6
│
├── dll/
│ ├── HyperVBridge/ Hyper-V WMI wrapper DLL
│ │ ├── HyperVBridge.h
│ │ ├── HyperVBridge.cpp
│ │ └── HyperVBridge.vcxproj
│ │
│ ├── FirmwareManager/ Firmware file management DLL
│ │ ├── FirmwareManager.h
│ │ ├── FirmwareManager.cpp
│ │ └── FirmwareManager.vcxproj
│ │
│ └── VMStorage/ VM config and disk storage DLL
│ ├── VMStorage.h
│ ├── VMStorage.cpp
│ └── VMStorage.vcxproj
│
└── docs/
└── SETUP.md Full setup and build guide
Cobvuz Virtual's backend is split across three custom DLLs. This keeps the main EXE clean and makes each subsystem independently testable.
The heart of the application. Wraps Microsoft's Hyper-V WMI API (root\virtualization\v2 namespace) so the main EXE doesn't need to link WMI headers directly.
Exposed functions:
HVB_Init()/HVB_Shutdown()— Connect/disconnect from Hyper-V WMIHVB_CreateVM()— Create a new Hyper-V VM with all settingsHVB_DeleteVM()— Permanently remove a VM from Hyper-VHVB_StartVM()/HVB_StopVM()/HVB_PauseVM()/HVB_ResumeVM()/HVB_SaveVM()HVB_GetVMState()— Query current VM state (running, stopped, paused...)HVB_CreateVHDX()— Create a dynamic virtual hard diskHVB_AttachISO()— Attach an ISO as a virtual DVD driveHVB_ListVMs()— Enumerate all Hyper-V VMsHVB_ListSwitches()— List available virtual switchesHVB_LastError()— Get last error message string
Manages firmware file locations, validation, and deployment.
Exposed functions:
FWM_GetFirmwarePath()— Returns path toseabios.binorOVMF.fdFWM_ValidateFirmware()— Checks that the firmware file exists and has correct sizeFWM_DeployFirmware()— Copies firmware to a VM's working directoryFWM_GetFirmwareName()/FWM_GetFirmwareDescription()— Human-readable info strings
Handles the on-disk storage structure for VM configs and disk images.
Exposed functions:
VMS_Init()— Set the root storage directory (creates it if needed)VMS_GetRoot()— Returns current storage root pathVMS_CreateVMDir()— Creates a per-VM folder, returns its pathVMS_DeleteVMDir()— Removes an entire VM folder and all its contentsVMS_ListVMConfigs()— Scans storage root for.cvmconfig filesVMS_GetDefaultVHDXPath()— Returns the default VHDX path for a named VM
User clicks "New VM"
│
▼
VMCreationWizard (6 pages, Win32 dialog)
│ collects: name, OS, CPU, RAM, disk, ISO, network, firmware
▼
VMConfig struct populated
│
├──▶ VMStorage.dll ──▶ Creates VM folder on disk
│ Saves .cvm config file
│
├──▶ HyperVBridge.dll ─▶ HVB_CreateVHDX() (creates .vhdx file)
│ HVB_CreateVM() (registers with Hyper-V via WMI)
│ HVB_AttachISO() (mounts boot ISO if provided)
│
└──▶ MainWindow refreshes VM list
When starting a VM, HyperVBridge.dll calls RequestStateChange on the Msvm_ComputerSystem WMI class, which tells Hyper-V to power on the VM. The VM's display is handled by Hyper-V itself through the standard Hyper-V Virtual Machine Connection window.
Planned future features (personal development backlog):
- Snapshot creation and restore
- VM export / import
- Live VM performance graphs (CPU %, RAM usage)
- Drag-and-drop ISO mounting
- Quick-create presets for common OSes (e.g. "Windows XP preset")
- Integrated Hyper-V Virtual Machine Connection viewer (embed display in app)
- VM cloning
- Keyboard shortcut support
- Tray icon with quick-access menu
- VM search / filter bar
- Dark/light theme toggle
Cobvuz Virtual is proprietary software and is not open source.
This project was created for personal use and YouTube content production. It is not licensed for distribution, modification, or use by third parties at this time.
See LICENSE for full terms.
Made with C++17 · Win32 API · Hyper-V WMI · SeaBIOS · OVMF
Cobvuz Virtual — Your VMs, your way.