-
-
Notifications
You must be signed in to change notification settings - Fork 301
Installer design
Frans van Dorsselaer edited this page Sep 20, 2025
·
9 revisions
action | install | update/repair | uninstall | remarks |
---|---|---|---|---|
detach --all | X | Stubs will not use VBoxUSB after this. | ||
disable_forced | X | VBoxUSB will not be used after this. NOTE: Must be non-fatal, in case the previous version does not have this! |
||
unbind --all | X | Stops all sharing (forced or not). VBoxUSB will not be used after this. | ||
uninstall_stubs (1) | X | Cleanup device tree. | ||
uninstall_old_drivers (1) | X | Cleanup drivers. | ||
uninstall_driver | X | Cleanup drivers. | ||
MSI: StopServices | Before VBoxUSBMon can stop, VBoxUSB must not be used. Schedule actions to accomplish that before StopServices. |
|||
MSI: InstallFiles | No actions depending on usbipd for install, files/registry would not be available.Schedule any actions before InstallServices to ensure they come after all of these. |
|||
uninstall_stubs (2) | X | X | Cleanup device tree. | |
install_driver | X | X | Make (PnP) driver available for future stubs. | |
install_monitor | X | X | Install VBoxUSBMon service (cannot use InstallService because it is kernel mode). Stopping and deleting is handled by MSI (StopServices / DeleteServices). |
|
MSI: InstallServices | Will install usbipd service, which depends on VBoxUSBMon.Schedule custom installation of VBoxUSBMon before InstallServices. |
|||
MSI: StartServices | Will start usbipd , which depends on VBoxUSBMon, which will therefore also be started.Schedule actions that require VBoxUSBMon running after StartServices. |
|||
update_drivers | X | X | Update all drivers. Driver will actually be loaded, because the device will be enabled by this. Should be only forced devices. Should be no-op for install, but it can't hurt. Schedule after StartServices, or the new VBoxUSB will fail to load (requires VBoxUSBMon). NOTE: Windows cannot update phantom devices. This function will cause them to become unforced instead. |
|
uninstall_old_drivers (2) | X | X | Cleanup drivers. Also on install, to clean up after previous versions that did not have this. Schedule after update_drivers |
|
enable_forced | X | X | Schedule after StartServices, or the VBoxUSB will fail to load (requires VBoxUSBMon). Should be no-op for install, but it can't hurt. |