‘R6025 pure virtual function call’ is a runtime error that occurs suddenly on the screen and disrupts the program being run prior to it. This error display indicates that the program has been corrupted. R6025 runtime error usually occurs with the Visual C++ framework.
Error CausesThis error occurs when the C++ program crashes which is usually because of the malfunctioning or missing of the device driver or incomplete device driver files.
It happens because your application indirectly calls a pure virtual member function in a context where a call to the function is invalid. Most of the time, the compiler detects it and reports it as an error when building the application. R6025 error is usually detected at run time.
To fix the R6025 pure virtual function call error, you need to find the call to the pure virtual function. After you find the call, you need to rewrite the code so that it is not called again.
There are 2 ways to do this:
One way to fix the R6025 pure virtual function call is to replace the function with an implementation that calls the Windows API function DebugBreak. The DebugBreak causes a hard-coded breakpoint.
Once the code stops running at this breakpoint, it is easy for you to view the call stack. By viewing the call stack you can identify the place where the function was actually called.
Another quick way to find a call to a pure virtual function to fix the R6025 error is to set a breakpoint on the _purecall function that is usually found in PureVirt.c.
By breaking this function you can trace the problem occurring and rewrite the call to ensure the error does not occur and the program you are trying to develop on the Visual C++ framework is easily developed.
If R6025 Error is related to Windows Registry Problem Then here’s how you can fix the problem:
To fix the runtime error R6025, run registry cleaner software to scan and fix all errors. This alternative is suitable if the R6025 error is related to the Windows registry problem and where the error has occurred due to corrupted or malicious registry entries.
You can download the registry cleaner repair tool for free. Run it to scan errors and then click the fix error button to repair the problem immediately.

Error CausesREG EXPORT HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerTaskband “E:\Pinned Items Backuptb-pinned-items.reg” xcopy “%AppData%MicrosoftInternet ExplorerQuick LaunchUser PinnedTaskBar” “E:\Pinned Items Backuppinnedshortcuts” /E /C /H /R /K /Y
REGEDIT /S “E:Pinned Items Backuptb-pinned-items.reg” xcopy “E:Pinned Items Backuppinnedshortcuts” “%AppData%MicrosoftInternet ExplorerQuick LaunchUser PinnedTaskBar” /E /C /H /R /K /Y
Error Causes
Error CausesCustomers will most likely encounter the “We couldn’t update system reserved partition” error when upgrading to Windows 10 from Windows 7 or Windows 8.1. This error may also come with error code 0xc1900104 or error code 0x800f0922.
Error Cause“We couldn’t update system reserved partition” Windows 10 upgrade error is normally caused by too little space on the System Reserved Partition (SRP). The System Reserve Partition is an additional small partition created by Windows, which stores boot files. The SRP can be filled up with security apps and third-party anti-virus. Once this partition has insufficient space, the system will not be able to upgrade to Windows 10.
Caution: The following steps are complex and need to be done by experienced users especially using the command line. Once an error is made in entering commands, there’s a chance that your device can be put in a no-boot situation, or data stored on the device can possibly get lost.
To upgrade to Windows 10, your device needs to have at least 15MB free space on the System Reserved Partition. Follow the procedure below and then try upgrading again.
NOTE: While in Admin mode, some apps like OneNote will not run.
Doing this method will make a permanent, but small increase in the free space of the device’s SRP.
a. Open the Run window by pressing the Windows key + R. Type diskmgmt.msc then hit Enter. b. Select System Reserve partition then right-click on it.
c. Choose Change Drive Letter and Paths then select Add.
d. Type Y for the drive letter then click OK.
e. Click on the Start button and search for cmd. In the results, right-click on Command Prompt then choose Run as administrator. The command prompt window will appear.
f. Type Y: at the command prompt then press Enter.
g. Once you’ve switched to drive Y, type takeown /d y /r /f . then hit Enter.
NOTE: Ensure that the space and period after “f” is included in order for the command to work properlyh. Type icacls Y:* /save %systemdrive%NTFSp.txt /c /t then hit Enter to back up the permission to the drive.
NOTE: Ensure that all files are marked as successful and that no files are marked as failed.
i. Type whoami then hit Enter. Record the username that appears. Afterwards, type icacls . /grant <username you got from whoami>:F /t then press Enter.
NOTE: Ensure that there’s no space between the username and “:F” or the command will not work.j. In the File Explorer, open the SRP drive and select the Boot folder. Choose the language folders you want to permanently delete. Language folders are named with four letters split with a hyphen. For example: de-DE is the German language while en-US is the U.S. English language.
2. Truncate the NTFS Log:
a. Open the Command Prompt then type chkdsk /L Y: to check the size of the NTFS Log. If the NTFS Log size is less than 5000KB, you need not truncate the file.
b. Type chkdsk /L:5000 /X /F then hit Enter to truncate the NTFS Log.
c. Return to Disk Management window. Select Action menu then select Check if the device’s SRP now has a larger amount of free space. Once there’s enough space, right click the System Reserve Partition then select Change Drive Letter and Paths. Choose Y: then select Remove.
3. If there’s still not enough available space after truncating the NTFS Log, resize the USN journal:
a. Open the command prompt then type fsutil usn queryjournal Y: to display the size in hex value. Convert the hex value to decimal then divide it by 1048576. The result you will get will be in MB. If the journal size is 30MB or more, proceed with truncating the file.
NOTE: To convert the Hex value to Decimal, open the Calculator app in Windows then choose View menu. Select Programmer then choose Hex. Type the Hex value then choose Dec.
b. Type fsutil usn deletejournal /D /N Y: then hit Enter to delete the journal. Type fsutil usn createjournal m=1500 a=1 Y: to recreate the journal having the new log size value.
a. Type icacls Y: /restore %systemdrive%NTFSp.txt /c /t in the Command Prompt. Check if the files were successfully processed before proceeding. If you see a message saying some files failed while processing, this is normal since some of the files have already been deleted before performing a backup. However, if there are no successful files indicated, the command was not properly executed.
b. Type icacls . /grant system:f /t then hit Enter to adjust the ACL back to System. Now, you can set the owner of the drive by typing icacls Y: /setowner “SYSTEM” /t /c then press Enter.
c. Check if the device’s SRP now has enough free space by going back to Disk Management and refreshing the data. If the SRP already has sufficient space, you can now remove the drive letter. Right-click on the System Reserved Partition then choose Change Drive Letter and Paths. Select the Y: drive then choose Confirm deleting the drive letter by clicking OK.
This method makes a larger, but temporary, increase in the SRP free space.
1. Be sure you have an external drive having at least 250 MB free space and formatted as NFTS.2. Open Run by pressing the Windows key + R. Type mscthen to choose the Recovery Partition. Right-click on it then choose Change Drive Letter and Paths.
3. Select Add then type Y for the drive letter, click
4. Click on the Start screen then type cmd in the search bar. In the results, right-click on Command Prompt then choose Run as administrator. The command prompt window will appear.
5. Switch to another drive by typing Y: in the command prompt. Once you’re in the drive Y, type takeown /d y /r /f .
NOTE: Ensure that space and period after “f” are included in order for the command to work properly.