-
-
Notifications
You must be signed in to change notification settings - Fork 313
Installer design
Frans van Dorsselaer edited this page Oct 11, 2025
·
15 revisions
| action | install | update/repair | uninstall | remarks |
|---|---|---|---|---|
| detach --all | X | Stubs will not use VBoxUSB after this. | ||
| delay (1) | X | Delay (2 seconds) for detach to finish. | ||
| 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. | ||
| delay (2) | X | Delay (2 seconds) for unbind to finish. | ||
| 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. |