- 1 Tutorial: Getting a stable software stack with ReactOS on VirtualBox.
- 1.1 Configuring VirtualBox
- 1.2 Installing guest additions and basic drivers
- 1.3 Installing additional software
- 1.4 Checking 3D
- 1.5 Recommended end user software
Tutorial: Getting a stable software stack with ReactOS on VirtualBox.
This tutorial aims at providing beginners and software testers with a step by step guide for creating a ReactOS installation in a VirtualBox with works as seamlessly as possible. While setting up ReactOS in a VirtualBox somehow is rather easy, getting all the drivers, guest additions and software settings right can be a bit tricky, especially since some decisions may cause Blue Secreens (BSOD) or make VirtualBox snapshots difficult.
This tutorial does not cover each and every software, only a "should have" driver and software stack and some applications I use in order to test multimedia and 3D settings or which I consider useful for end users.
Disclaimer: Everything written here is based on my own experience and ReactOS might behave differently on other computers. I am not someone "official" either, so don't blame me if something doesn't work as described.
This section is based on https://reactos.org/wiki/VirtualBox, but covers more details. It assumes you have a ROS boot image. Tested with VirtualBox 5.1.22.
- Create a new virtual machine based on Windows 2003 (32-bit), as this the target for ReactOS. Note that the type is not really important, the actual VM settings are.
- Create a virtual hardisk. I use a 20 GB (dynamically allocated) as this should be enough for tests.
- Once the VM has been created, open and adjust its settings:
- Tab Advanced: Enable Bidirectional shared clipboard. This helps copying URLs, registration codes and text around.
- Adjust your memory settings. At least 256 MB is recommended, but some software might require far more than that. I chose 50% of my real memory.
- There is no need to enable I/O APIC as Multithreading is not supported in ROS 0.4.6 yet.
- Leave all other settings as they are (1 processor, hardware virtualization on)
- Set video memory to 32MB. Do NOT use more than 32MB as this will cause the Guest additions to prevent ROS from starting.
- For this multimedia-centric tutorial enable 3D and 2D acceleration, that is, if your graphics card is not from the last century.
- Use the "Empty" IDE controller to assign the ROS boot image (.iso) to the "DVD" drive.
- Ensure that the audio controller is "ICH AC97". ROS ships with a driver for this controller.
- Tab "Adapter 1": Open the "Advanced" section and choose the adapter type "PCnet-FAST III". Again, ROS has a driver for this.
Section "Shared Folders"
- Add a shared folder and select "Auto-mount". I also chose "Read-only" as my driver is on an NTFS drive. (I haven't tested write access yet.)
That's it. Now boot ReactOS from the ISO and follow the instructions. I recommend increasing the initial screen resolution. The boot loader settings can remain as they are. I leave the most settings unchanged, only modifying the keyboard layout to personal taste.
Installing guest additions and basic drivers
After a few minutes and two restarts later, ReactOS is installed and will ask you to provide hardware drivers. You can cancel these dialogs or click through - ReactOS will not (yet) find drivers. That's expected.
CHECKPOINT: You may want to create a snapshot in VirtualBox in case something goes wrong later.
NOTE: At this point you can create snapshots both while ROS is running or after it is shut down and both should work well.
Installing the guest additions
- Do a restart and on the boot manager, press F8, select "Safe mode" and then start "ReactOS".
- In the VirtualBox menu, choose "Devices" -> "Insert guest additions CD image"
- Navigate to the "VBOXADDITIONS" drive and start "VBoxWindowsAdditions.exe".
- Leave the target directory unchanged unless there is a reason to change it.
- Enable "Direct3D support". That's why we had to switch to the "Safe mode".
NOTE: If you get a BSOD for "VBoxDisp.dll" you likely have chosen more than 32MB graphics memory. Recover your last snapshot, shutdown ROS (if necessary) and change that setting before trying again.
After the restart you may want to adjust the display resolution and color settings.
Installing additional drivers
- In the ReactOS application manager (RAPPS), section "Drivers", install the AC97 driver. When prompted for the target directory, choose "C:\ReactOS" (unless you chose a different OS folder name).
- Open the device manager in under system settings -> system, tab "hardware", select the "Multimedia audio device". It should be the only remaining "Unknown device". In the context menu, select "Update driver" and follow the wizard. Installation should be successful.
- Restart TWO times. The first reboot may take an extra 10 seconds or so. Installation was successful when, after the second restart you hear the ReactOS welcome sound.
Last, but not least I recommend to install the "Microsoft Tahoma Font" from the application manager, section "Libraries". It seems to solve some issues with ligatures but might only be necessary for certain applications.
CHECKPOINT: I recommend shutting down ROS and create another snapshot in VirtualBox. Note that when recovering a snapshot later, your screen resolution may be reset to VGA but you can drag the windows larger or re-set the resolution in ROS. This seems to happen randomly.
ATTENTION: At this time, when you create the snapshot while VBox is running and later return to that snapshot, ROS will show a BSOD. You have to "Reset" the machine in this case, after which ROS will boot without problems. But there is no use in a snapshot of a running ReactOS if the running OS cannot recover.
Installing additional software
From now on, you may focus on whatever you think most important. I can give some suggestions:
Installing Firefox (and Flash)
ATTENTION: Firefox 53 and newer will not work on ReactOS 0.4.6, as support for WinXP has ended. Neither does (unfortunately) FF 52.3.0 ESR or any other release above FF 48, as my tests showed.
You may download and install FF 45 from the application manager, but I recommend getting the newer FF 48.0.2, which is the latest release I know to work on ReactOS. The download URL is:  or for the German version: 
After installation the first thing you need to do is enter the Firefox settings and disable auto-updates. (You may ignore the balloon tab telling you about a newer, already downloaded version.)
ATTENTION: If you either open the about dialog or forgot to disable auto-updates, Firefox will quickly update itself to a newer version which will not run. Never ever open the "About" dialog - it initiates the update even if auto-update is off (which I find counter-intuitive)!
You may then install Addons, such as Adblock Plus etc...
Firefox 48 can playback HTML5 videos on Youtube, but there is no sound. In order to get some videos and live-streams working with sound, Flash can be installed. Open  and download it from there. Version 26, the recommended one at the time of writing, works for me.
Tip: The online installer may report a connection error. In this case, just try again a second or third time. Then it worked for me.
After another Firefox restart you may for instance test some TV channel media center. In Germany the ARD TV lifestream requires Flash and should now work: 
CHECKPOINT: How about another snapshot now? (Better shut down ReactOS beforehand.)
ATTENTION: I found that recovering to snapshots created at this time or later with ROS being shut down can sometimes cause ROS to start with graphics problems (light blue screen with some artefacts on top). It is not clear exactly what causes this, but resetting the VM helps.
Installing and configuring VLC player
The (currently) latest VLC player 2.2.6 (32 bit) version can be downloaded from the VLC website and will work. I recommend this over the usually older version provided by the application manager. (But if you are lazy - the provided one will do as well.)
- Once VLC is installed, open it without a video first.
- In the menu, open the "Tools" -> "Preference" and in the bottom left corner, switch to "All" settings. This is important because VLC will freeze trying to open the Video settings in the graphical setup.
- In the list now shown on the left, select Video -> Output modules (near the bottom).
- Change the Video output module from "Auto" to "OpenGL video output" or "Direct3D video output"
I found OpenGL to give better video performance. I haven't tested all, but "DirectX (DirectDraw)" and "Direct2D" do not work for me.
OpenGL, Mesa 3D and Google Earth
If you followed this tutorial, OpenGL should be already working. You can install Furmark (e.g. version 1.1.7) and check it works, albeit slowly.
In the ReactX diagnosis application (dxdiag), the DirectDraw tests fail. This can be fixed by installing the Mesa driver. However, since Mesa 3D is a non-accelerated 3D driver this will further decrease the performance in FurMark, so it may not be what you really want. If you still want to try:
- In the application manager, within "Libraries", select and install the "Mesa3D Graphics Library".
- Carefully read the setup information: The non-accellerated OpenGL library will replace any other OpenGL driver if set as default. In order to satisfy the dxdiag DirectDraw test, it must be set as default.
- Open the ReactX diagnosis application (dxdiag) and check the DirectDraw test works. (Direct3D does fail for me.)
If you intend to install and use Google Earth, you *must* currently (in ROS 0.4.6) install the Mesa drivers, because otherwise Google Earth will make ReactOS freeze on startup. If you have them installed, however, Google Earth will run, albeit with not the framerate you might be used to.
Recommended end user software
Here is a list of some end user software which I found to work well on ReactOS 0.4.6. (It does not include debugging tools and such.) See https://reactos.org/wiki/Tests_for_0.4.6 for more details. Games are deliberately not listed here, but you find games tests on this wiki page.
- 7zip (packer, open source, in RAPPS)
- Notepad++ (editor, open source, in RAPPS)
- Adobe Reader 7.0.7 (PDF reader, Freeware) works well, ... if you are able to get this 2006 version nowadays.
- SumatraPDF 3.1.1 (PDF reader, open source) is reported to work well.
- Scribus 1.4.6 (desktop publishing, open source) is reported to work with only minor glitches.
Note: LibreOffice 5.2.6 installs for me but is so slow I consider it almost unusable. I haven't tested Apache OpenOffice.
- Faststone Image Viewer, current version (image viewer with editing functions, "Free for home users")
- FS IV has a minor display problem in thumbnails view, but works well otherwise.
- IrfanView 4.44 (image viewer, Free for home users) works but before installation requires to download and extract the VisualC++ 6 runtime (e.g. from RAPPS) and manually copy the DLLs to C:\ReactOS\system32 (or your OS operation folder).
- Aquasoft Diashow Studio 6.4.03 (slide show/presentation, commercial) works when using software mode for playback. Note that other versions (including the free c't edition 6.6.03) have major issues, as far as I tested. The even older v5.7 should work as well.
- VLC 2.2.6 (video player, open source, older version in RAPPS), works with minor glitches, see above
- Winamp 2.9.1 (MP3 and music player, Freeware) works with minor display issues in the GUI.
- Google Earth 6.2.2 / 7.1 (virtual globe, Freeware), installed via the offline installer(!) works in OpenGL mode, but requires Mesa driver to be installed. Performance in areas with 3D cityscapes might be poor, otherwise it is completely usable.