Windows Vista and Newer Operating Systems

Published: October 22, 2009

Updated: October 22, 2009

Applies To: Windows 7, Windows Vista

You can locate existing compatibility fixes for some of the issues that you might experience due to the changes made for the Windows Vista® operating system, including the User Account Control (UAC) restrictions.

ImportantImportant
If you started the Compatibility Administrator as an Administrator (with elevated privileges), you might notice that all of the fixed applications are running successfully, and that virtualization and redirection do not occur as expected. To verify that a fix addresses your issue, you must test your fixed applications by running them under the destination user account.

Compatibility Fixes

The following table lists the known compatibility fixes, for the Windows Vista and newer operating systems, including any symptoms that you might experience.

 

Symptom Fix Name Fix Description

The application cannot access the Device\PhysicalMemory object beyond the kernel-mode drivers, on any of the Windows Server® 2003 operating systems.

BIOSRead

Enables OEM executable (.exe) files to use the GetSystemFirmwareTable function when reading the BIOS for the \\Device\Physical memory information, instead of using the NtOpenSection function.

InstallShield created installers and uninstallers fail to complete, generating error messages or warnings.

BlockRunasInteractiveUser

Blocks InstallShield from setting the value of registry keys named RunAs to InteractiveUser, which no longer has Administrator rights.

noteNote
For more detailed information about the BlockRunasInteractiveUser application fix, see Using the BlockRunAsInteractiveUser Fix.

The application fails because it cannot return shell folder paths, while using the SHGetFolder API.

ChangeFolderPathToXPStyle

Intercepts the SHGetFolder path request to the common appdata file path, returning the Windows® XP-style file path instead of the Windows Vista-style file path.

The application fails to start.

ClearLastErrorStatusonIntializeCriticalSection

Modifies the InitializeCriticalSection function call so that it checks the NTSTATUS error code, and then sets the last error to ERROR_SUCCESS.

The application's installer must run elevated and depends on the HKCU settings provided for other users.

CopyHKCUSettingsFromOtherUsers

Scans the existing user profiles and attempts to copy the specified keys into the HKEY_CURRENT_USER registry area.

You can further control this fix, by entering the registry keys that are to be copied as parameters, separated by the ^ symbol. For example, Software\MyCompany\Key1^Software\MyCompany\Key2.

noteNote
For more detailed information about the CopyHKCUSettingsFromOtherUsers application fix, see Using the CopyHKCUSettingsFromOtherUsers Fix.

An access violation error message appears and the application fails when you select or crop an image.

CorrectCreateBrushIndirectHatch

Corrects the brush style hatch value, which is passed to the CreateBrushIndirect() function, enabling the information to be correctly interpreted.

The application is denied access, or receives a file not found or path not found error message, when attempting to write files to the hard disk.

CorrectFilePaths

Modifies the file path names to point to a new location on the hard disk.

noteNote
For more detailed information about the CorrectFilePaths application fix, see Using the CorrectFilePaths Fix. We recommend that you use this fix with the CorrectFilePathsUninstall fix, if you are applying it to a setup installation file. For more detailed information about the CorrectFilePathsUninstall application fix, see Using the CorrectFilePathsUninstall Fix

The uninstallation of an application leaves behind files, directories, and links.

CorrectFilePathsUninstall

Corrects the file paths used by the uninstallation process of an application.

noteNote
For more detailed information about the CorrectFilePathsUninstall application fix, see Using the CorrectFilePathsUninstall Fix. We recommend that you use this fix with the CorrectFilePaths fix, if you are applying it to a setup installation file. For more detailed information about the CorrectFilePaths application fix, see Using the CorrectFilePaths Fix

Starting an executable (.exe) causes a blinking taskbar item rather than an elevation prompt, or the application does not provide a valid HWND value when calling the ShellExecute(Ex) function.

CorrectShellExecuteHWND

Intercepts the ShellExecute(Ex) calls, and then inspects the HWND value. If the value is invalid, this fix enables the call to use the currently active HWND value.

noteNote
For more detailed information about the CorrectShellExecuteHWND application fix, see Using the CorrectShellExecuteHWND Fix.

Not available

DelayApplyFlag

Applies a KERNEL, USER, or PROCESS flag if the specified DLL is loaded.

You can further control this fix, by using the following syntax at the command prompt:

DLL_Name;Flag_Type;Hexidecimal_Value

Where the DLL_Name is the name of the specific DLL including the file extension, Flag_Type is KERNEL, USER, or PROCESS, and a Hexidecimal_Value, starting with 0x and up to 64-bits long.

noteNote
The PROCESS flag type can have only a 32-bit length, and you can separate multiple entries with a backslash (\).

An error message appears when the application attempts to install a service that has a dependency on a deprecated service.

DeprecatedServiceShim

Intercepts the CreateService function calls and removes the deprecated dependency service from the lpDependencies parameter.

You can further control this fix, by using the following syntax at the command prompt:

Deprecated_Service\App_Service/Deprecated_Service2 \App_Service2

Where Deprecated_Service is the name of the service that has been deprecated and App_Service is the name of the specific application service to be modified. For example, NtLmSsp\WMI.

noteNote
If you do not provide an App_Service name, the deprecated service will be removed from all newly created services.

noteNote
Separate multiple entries with a forward slash (/).

The application fails because it does not find the correct version number for DirectX®.

DirectXVersionLie

Modifies the DXDIAGN GetProp function call to return the correct DirectX version.

You must further control this fix, by using the following syntax at the command prompt:

MAJORVERSION.MINORVERSION.LETTER

For example, 9.0.c.

The application appears incorrectly, so that some objects are not drawn or object artifacts remain on the screen.

DisableDWM

Temporarily disables the Windows "Aero" menu theme functionality for unsupported applications.

noteNote
For more detailed information about the DisableDWM application fix, see Using the DisableDWM Fix.

The application fade animations, buttons, or other controls do not function properly.

DisableFadeAnimations

Disables the fade animations for unsupported applications.

The application behaves unpredictably when trying to detect and use the correct Windows settings.

DisableThemeMenus

Temporarily disables the Windows "Aero" menu theme functionality for unsupported applications.

Installation, uninstallation, or updates fail because the host process calls the CreateProcess function and it returns the ERROR_ELEVATION_REQUIRED error message.

ElevateCreateProcess

Handles the error code and attempts to call the CreateProcess function again, this time requesting elevation. There will be no effect if the fixed application already has a UAC manifest; the error code will be returned unchanged.

noteNote
For more detailed information about the ElevateCreateProcess application fix, see Using the ElevateCreateProcess Fix.

The application fails because of an incorrect UNC path.

EmulateOldPathIsUNC

Changes the PathIsUNC function to return a value of True for UNC paths in Windows Vista.

The applications experiences search functionality issues.

EmulateSorting

Forces applications that use the CompareStringW/LCMapString sorting table to use an older version, prior to the one introduced with Windows Vista.

noteNote
For more detailed information about the EmulateSorting application fix, see Using the CorrectFilePaths Fix.

The application invokes the Release() method too many times, causing an object to be prematurely destroyed.

ExtraAddRefDesktopFolder

Counteracts the application's attempt to obtain the shell desktop folder by invoking the AddRef() method on the Desktop folder, which is returned by the SHGetDesktopFolder function.

The application fails, due to deprecated API calls. For example, the FileMenu_* functions

FailObsoleteShellAPIs

Either fully implements the obsolete functions, or implements the obsolete functions with stubs that fail.

noteNote
At the command prompt, you can type FailAll=1 to suppress the function implementation and force all functions to fail.

The application uninstallation process does not remove all of the files and folders.

FailRemoveDirectory

Fails any application call to the RemoveDirectory() function, if the file path location matches a fully qualified and specified location.

The theme application does not appear properly. The colors appear washed out or the user interface looks less detailed.

FakeLunaTheme

Intercepts the GetCurrentThemeName API and returns the value for the Windows XP default theme, Luna, instead of the Windows Vista default theme, Aero.

noteNote
For more detailed information about the FakeLunaTheme application fix, see Using the FakeLunaTheme Fix.

Changes do not immediately appear on the hard disk and applications that are watching the file are unable to see the changes.

FlushFile

Enables the WriteFile function to call to the FlushFileBuffers APIs, which in turn flushes the file cache onto the hard disk.

The application fails to function during an explicit administrator check.

ForceAdminAccess

Enables the user to temporarily emulate being a part of the Administrators group, by returning a value of True during the administrator check.

noteNote
For more detailed information about the ForceAdminAccess application fix, see Using the ForceAdminAccess Fix.

The application presents unusual behavior when installing an application, such as the setup program stating that it cannot install to a user-specified location.

GetDriveTypeWHook

Changes GetDriveType() so that only the root information appears for the file path. This is required when an application passes an incomplete or badly-formed file path while attempting to retrieve the type of drive on which the file path exists.

The "Computer memory full" error message appears when you start an application.

GlobalMemoryStatusLie

Modifies the memory status structure, so that it reports a swap file that is 400 MB, regardless of the true swap file size.

An access violation error message appears, because an API is performing pointer validation, prior to using a parameter.

HandleBadPtr

Supports using lpBuffer validation from the InternetSetOptionA and InternetSetOptionW functions, to perform the additional parameter validation.

The application fails when changing an attribute on a file or directory.

HandleMarkedContentNotIndexed

Intercepts any API calls that return the attributes for files and directories invoked from the %TEMP% directory, resetting the FILE_ATTRIBUTE_NOT_CONTENT_INDEXED attribute back to its original state.

The allocation process shuts down unexpectedly.

HeapClearAllocation

Clears out the heap allocation for an application, by using zeros.

The application fails to function when special key combinations are used.

IgnoreAltTab

Intercepts the RegisterRawInputDevices API and prevents the delivery of the WM_INPUT messages. This delivery failure forces the included hooks to be ignored and forces DInput to use Windows-specific hooks.

noteNote
For more detailed information about the IgnoreAltTab application fix, see Using the IgnoreAltTab Fix.

A read error or an access violation error message appears when attempting to find or open files.

IgnoreDirectoryJunction

Links the FindNextFileW, FindNextFileA, FindFirstFileExW, FindFirstFileExA, FindFirstFileW and FindFirstFileA APIs, to prevent them from returning directory junctions.

noteNote
Symbolic links only appear in Windows Vista.

The application stops functioning immediately after starting, or starts with only a cursor appearing on the screen.

IgnoreException

Enables the application to ignore specified exceptions. By default, this fix ignores privileged-mode exceptions; however, it can be configured to ignore any exception.

You can further control this fix, by using the following syntax at the command prompt:

Exception1;Exception2

Where Exception1 and Exception2 are specific exceptions to be ignored. For example, ACCESS_VIOLATION_READ:1;ACCESS_VIOLATION_WRITE:1

ImportantImportant
Be advised that you should only use this compatibility fix if you are certain that it is acceptable to ignore the exception. You might experience additional compatibility issues if you choose to incorrectly ignore an exception.

noteNote
For more detailed information about the IgnoreException application fix, see Using the IgnoreException Fix.

Not available

IgnoreFloatingPointRoundingControl

Enables an application to ignore the rounding control request and to behave as expected in previous versions of the application.

The application text appears distorted.

IgnoreFontQuality

Enables color-keyed fonts to work properly with anti-aliasing.

A message box appears with debugging or extraneous content when the application is run on an unexpected operating system.

IgnoreMessageBox

Intercepts the MessageBox* APIs and inspects them for specific message text. If matching text is found, the application continues without showing the message box.

noteNote
For more detailed information about the IgnoreMessageBox application fix, see Using the IgnoreMessageBox Fix.

An error message appears, stating that the operating system is unable to locate the MSVCR80D.DLL file.

IgnoreMSOXMLMF

Ignores the registered MSOXMLMF.DLL object, which the 2007 Microsoft® Office release loads into the operating system any time you load an XML file, and then it fails the CoGetClassObject for its CLSID.

The application unsuccessfully attempts to create an object in the Global namespace.

LocalMappedObject

Intercepts the function call to create the object, replacing the word Global with Local.

noteNote
For more detailed information about the LocalMappedObject application fix, see Using the LocalMappedObject Fix.

The application fails to uninstall, with access-related errors.

MakeShortcutRunas

Locates any RunDLL.exe-based uninstallers and forces them to run with different credentials during the application installation. After applying this fix, the installer will create a shortcut specifying a matching string to run during the application installation, enabling the uninstallation to occur later.

noteNote
For more detailed information about the MakeShortcutRunas application fix, see Using the MakeShortcutRunAs Fix

Not available

ManageLinks

Intercepts common APIs that are going to a directory or to an executable (.exe) file, and then converts any symbolic or directory junctions before passing it back to the original APIs.

The application experiences security access issues during setup.

MoveToCopyFileShim

Forces the CopyFile APIs to run instead of the MoveFile APIs. CopyFile APIs avoid moving the security descriptor, which enables the application files to get the default descriptor of the destination folder and prevents the security access issue.

An error message appears, stating that you do not have the appropriate permissions to access the application.

OpenDirectoryAcl

Reduces the security privilege levels on a specified set of files and folders.

noteNote
For more detailed information about the OpenDirectoryACL application fix, see Using the OpenDirectoryACL Fix.

Not available

PreInstallDriver

Preinstalls drivers for applications that would otherwise attempt to install or to start drivers during the initial start process.

Not available

PreInstallSmarteSECURE

Preinstalls computer-wide CLSIDs for applications that use SmartSECURE copy protection, which would otherwise attempt to install the CLSIDs during the initial start process.

An "Unhandled Exception" error message appears, because the application attempted to read the process performance data registry value to determine if another instance of the application is running.

ProcessPerfData

Handles the failure case, by passing a fake process performance data registry key, so that the application perceives that it is the only instance running.

noteNote
This issue seems to occur most frequently with .NET applications.

The application incorrectly fails to apply an application fix.

PropagateProcessHistory

Sets the _PROCESS_HISTORY environment variable, so that child processes can look in the parent directory for matching information while searching for application fixes.

The application fails to run because of incorrect Protected Administrator permissions

ProtectedAdminCheck

Addresses the issues that occur with applications that perform non-standard Administrator checks, generating false positives for users running as Protected Administrators, because the associated SID exists, but is set as deny-only.

Not available

RedirectCRTTempFile

Intercepts failing CRT calls that attempt to create a temporary file at the root of the volume, redirecting the calls to a temporary file in the user's temporary directory.

The application cannot be accessed due to User Account Control (UAC) restrictions.

RedirectHKCUKeys

Duplicates any newly created HKCU keys to other users' HKCU accounts. This fix is generic for UAC restrictions, whereby the HKCU keys are required, but are unavailable to an application at runtime.

You are unable to play MP3 files.

RedirectMP3Codec

Intercepts the CoCreateInstance call for the missing filter and then redirects it to a supported version.

The application cannot be accessed by its shortcut, or the application shortcuts are not removed during the application uninstallation process.

RedirectShortcut

Redirects all of the shortcuts created during the application setup to appear according to a specified path.

  • Start Menu shortcuts: Appear in the \\ProgramData\Microsoft\Windows\Start Menu directory for all users.

  • Desktop or Quick Launch shortcuts: You must manually place the shortcuts on the individual user's desktop or Quick Launch bar.

This issue occurs because of UAC restrictions. Specifically, where an application setup runs with elevated privileges and stores the shortcuts according to the elevated user's context. In this situation, a restricted user cannot access the shortcuts.

ImportantImportant
You cannot apply this fix to an .exe file that includes a manifest and provides a runlevel.

Installers, uninstallers, or updaters fail when started from a host application.

RelaunchElevated

Enables a child .exe file to run with elevated privileges, when it is difficult to determine the parent process with either the ElevateCreateProcess fix or by marking the .exe files to RunAsAdmin.

noteNote
For more detailed information about the RelaunchElevated application fix, see Using the RelaunchElevated Fix.

The application attempts to open the Service Control Manager (SCM) and receives an "Access Denied" error message.

RetryOpenSCManagerWithReadAccess

Retries the call, requesting a more restricted set of rights, including:

  • SC_MANAGER_CONNECT

  • SC_MANAGER_ENUMERATE_SERVICE

  • SC_MANAGER_QUERY_LOCK_STATUS

  • STANDARD_READ_RIGHTS

    noteNote
    For more detailed information about the RetryOpenSCManagerWithReadAccess application fix, see Using the RetryOpenSCManagerWithReadAccess Fix.

The "Unable to open service due to your application using the OpenService() API to test for the existence of a particular service" error message appears.

RetryOpenServiceWithReadAccess

Retries the OpenService() API call, verifying that the user has Administrator rights, is not a Protected Administrator, and by using read-only access.

noteNote
For more detailed information about the RetryOpenServiceWithReadAccess application fix, see Using the RetryOpenServiceWithReadAccess Fix.

The application fails to function with the Standard User or Protected Administrator account.

RunAsAdmin

Enables the application to run with elevated privileges. This is the equivalent of specifying requireAdministrator in an application manifest.

noteNote
For more detailed information about the RunAsAdmin application fix, see Using the RunAsAdmin Fix.

Administrators are unable to view the read/write version of an application that presents a read-only view to Standard Users.

RunAsHighest

Enables the application to run with the highest available permissions. This is the equivalent of specifying highestAvailable in an application manifest.

noteNote
For more detailed information about the RunAsHighest application fix, see Using the RunAsHighest Fix.

The application fails to be detected as requiring elevation.

RunAsInvoker

Enables the application to run with the privileges associated with the creation process, without requiring elevation. This is the equivalent of specifying asInvoker in an application manifest.

noteNote
For more detailed information about the RunAsInvoker application fix, see Using the RunAsInvoker Fix.

The application fails when trying to interact with services running in different sessions.

SessionShim

Intercepts API calls from applications that are attempting to interact with services running in another session, by using the terminal service name prefix (Global or Local) as the parameter.

At the command prompt, you can supply a list of objects to modify, separating the values by a double backslash (\\), or you can choose not to include any parameters, so that all of the objects will be modified.

ImportantImportant
Users cannot log in as Session 0 (Global Session) in Windows Vista, so applications that require access to Session 0, automatically fail.

noteNote
For more detailed information about the SessionShim application fix, see Using the SessionShim Fix.

Not available

SetProtocolHandler

Registers an application as a protocol handler.

You can further control this fix, by using the following syntax at the command prompt:

Client;Protocol;App

Where the Client is the name of your mail protocol, Protocol is mailto, and App is the name of the application.

noteNote
Currently, only the mail client and the mailto protocol are supported. You can separate multiple clients with a backslash (\).

A 32-bit setup program fails to install because it requires 64-bit drivers.

SetupCommitFileQueueIgnoreWow

Disables the Wow64 file system used by the 64-bit editions of Windows Vista, to prevent 32-bit applications from accessing 64-bit file systems during the application setup.

The application fails, even after applying a compatibility fix known to fix an issue.

noteNote
Applications using unicows.dll or copy protection often present this issue.

ShimViaEAT

Applies the specified compatibility fixes, by modifying the export table and by nullifying the use of module inclusion and exclusion.

noteNote
For more information about the ShimViaEAT application fix, see Using the ShimViaEAT Fix.

The Web application experiences navigation and display issues, because of the new tabbing feature.

ShowWindowIE

Intercepts the ShowWindow API call, to address the issues that occur when a Web application determines that it is in a child window. This fix calls the real ShowWindow API on the top-level parent window.

The application installation file fails to be picked up by the GenericInstaller function.

SpecificInstaller

Flags the application as being an installer file (for example, setup.exe), and then prompts for elevation.

noteNote
For more detailed information about the SpecificInstaller application fix, see Using the SpecificInstaller Fix.

An application that is not an installer and has sufficient privileges is generating a false positive from the GenericInstaller function.

SpecificNonInstaller

Flags the application to exclude it from detection by the GenericInstaller function.

noteNote
For more detailed information about the SpecificNonInstaller application fix, see Using the SpecificNonInstaller Fix.

Not available

TrimDisplayDeviceNames

Trims the names of the display devices returned by the EnumDisplayDevices API.

Not available

UIPICompatLogging

Enables the logging of Windows messages from Internet Explorer and other processes.

The application does not properly communicate with other processes, due to the non-delivery of customized Windows messages.

UIPIEnableCustomMsgs

Enables customized Windows messages to pass through to the current process from a lower Desktop integrity level. This fix is the equivalent of calling the RegisterWindowMessage function, followed by the ChangeWindowMessageFilter function in the code.

You can further control this fix, by using the following syntax at the command prompt:

MessageString1 MessageString2

Where MessageString1 and MessageString2 reflect the message strings that can pass.

noteNote
Multiple message strings must be separated by spaces. For more detailed information about the UIPIEnableCustomMsgs application fix, see Using the UIPIEnableCustomMsgs Fix.

The application does not communicate properly with other processes, due to the non-delivery of standard Windows messages.

UIPIEnableStandardMsgs

Enables standard Windows messages to pass through to the current process from a lower Desktop integrity level. This fix is the equivalent of calling the ChangeWindowMessageFilter function in the code.

You can further control this fix, by using the following syntax at the command prompt:

1055 1056 1069

Where 1055 reflects the first message ID, 1056 reflects the second message ID, and 1069 reflects the third message ID that can pass.

noteNote
Multiple messages must be separated by spaces. For more detailed information about the UIPIEnableStandardMsgs application fix, see Using the UIPIEnableStandardMsgs Fix.

The "Component failed to be located" error message appears when you start an application.

VirtualRegistry

Enables the registry functions to allow for virtualization, redirection, expansion values, version spoofing, the simulation of performance data counters, and so on.

noteNote
For more detailed information about VirtualRegistry, see Using the VirtualRegistry Fix.

Several error messages appear and the application is unable to delete files.

VirtualizeDeleteFile

Makes the application's call of the DeleteFile function a virtual call, in an attempt to remedy the UAC and file virtualization issues that were introduced with Windows Vista. This fix also links other file APIs (for example, GetFileAttributes) to ensure the virtualization of the file is deleted.

noteNote
For more detailed information about VirtualizeDeleteFile, see Using the VirtualizeDeleteFile Fix.

The application fails to register COM components at runtime.

VirtualizeHKCRLite

Redirects the HKCR write calls (HKLM) to the HKCU hive, for a per-user COM registration. This operates much like the VirtualRegistry fix when using the VirtualizeHKCR parameter; however, VirtualizeHKCRLite provides better performance.

noteNote
HKCR is a virtual merge of the HKCU\Software\Classes and HKLM\Software\Classes directories. The use of HKCU is preferred if an application is not elevated and is ignored if the application is elevated.

ImportantImportant
You will typically use this compatibility fix in conjunction with the VirtualizeRegisterTypeLib fix.

noteNote
For more detailed information about VirtualizeHKCRLite, see Using the VirtualizeHKCRLite Fix.

Not available

VirtualizeRegisterTypeLib

When used with the VirtualizeHKCRLite fix, it ensures that the type library and the COM class registration happen simultaneously. This functions much like the RegistryTypeLib fix, when using the RegisterTypeLibForUser parameter.

noteNote
For more detailed information about VirtualizeRegisterTypeLib, see Using the VirtualizeRegisterTypeLib Fix.

An error message appears, stating "Unable to initialize sound device from your audio driver", and then the application closes.

WaveOutIgnoreBadFormat

Enables the application to ignore the bad format error and continue to function properly.

Not available

WerDisableReportException

Turns off the silent reporting of exceptions to the Windows Error Reporting tool, including those reported by Object Linking and Embedding-Database (OLE DB), by intercepting the RtlReportException API and returning the STATUS_NOT_SUPPORTED error message.

The application fails because it does not find the correct version number for the required Windows operating system.

  • Win95VersionLie

  • Win98VersionLie

  • WinNT4SP5VersionLie

  • Win2000VersionLie

  • Win2000SP1VersionLie

  • Win2000SP2VersionLie

  • Win2000SP3VersionLie

  • WinXPVersionLie

  • WinXPSP1VersionLie

  • WinXPSP2VersionLie

  • VistaRTMVersionLie

  • Win2K3RTMVersionLie

  • Win2K3SP1VersionLie

noteNote
For more detailed information about each of these version lies, see the associated topic. For example, Using the VistaRTMVersionLie

An error message appears, stating that the WinG library was not properly installed.

Wing32SystoSys32

Detects if the WinG32 library appears in the correct directory. If the library is in the wrong location, this fix copies the information (typically during the runtime of the application) into the  %WINDIR% \system32 directory.

ImportantImportant
The application must have Administrator privileges for this fix to work.

The application experiences issues due to a VB runtime DLL.

WinXPSP2VersionLie

Forces the application to accept the fix, by following these steps:

  1. Open the Compatibility Administrator, and then select None for Operating System Mode.

  2. On the Compatibility Fixes page, click WinXPSP2VersionLie, and then click Parameters.

    The Options for <fix_name> dialog box appears.

  3. Type vbrun60.dll into the Module Name box, click Include, and then click Add.

  4. Save the custom database.

    noteNote
    For more information about the WinXPSP2VersionLie application fix, see Using the WinXPSP2VersionLie Fix.

The application fails when it attempts to register a COM component that releases with Windows Vista.

WRPDllRegister

Skips registering and unregistering WRP-protected COM components when calling the DLLRegisterServer and DLLUnregisterServer functions.

You can further control this fix, by using the following syntax at the command prompt:

Component1.dll;Component2.dll

Where Component1.dll and Component2.dll reflect the components to be skipped.

noteNote
For more detailed information about WRPDllRegister, see Using the WRPDllRegister Fix.

An access denied error message appears when the application attempts to access a protected operating system resource with more than read-only access.

WRPMitigation

Emulates the successful authentication and modification of file and registry APIs, so that the application can continue.

noteNote
For more detailed information about WRPMitigation, see Using the WRPMitigation Fix.

An access denied error message appears when the application attempts to delete a registry key.

WRPRegDeleteKey

Verifies whether the registry key is WRP-protected. If the key is protected, this fix emulates the deletion process.

Not available

XPAfxIsValidAddress

Emulates the behavior of Windows XP for MFC42!AfxIsValidAddress.

Compatibility Modes

The following table lists the known Windows Vista-related compatibility modes, including the description and included compatibility fixes.

 

Compatibility Mode Name Description Included Compatibility Fixes

WinSrv03

Emulates the Windows Server 2003 operating system.

  • Win2k3RTMVersionLie

  • VirtualRegistry

  • ElevateCreateProcess

  • EmulateSorting

  • FailObsoleteShellAPIs

  • LoadLibraryCWD

  • HandleBadPtr

  • GlobalMemoryStatus2GB

  • RedirectMP3Codec

  • EnableLegacyExceptionHandlinginOLE

  • NoGhost

  • HardwareAudioMixer

WinSrv03Sp1

Emulates the Windows Server 2003 with Service Pack 1 (SP1) operating system.

  • Win2K3SP1VersionLie

  • VirtualRegistry

  • ElevateCreateProcess

  • EmulateSorting

  • FailObsoleteShellAPIs

  • LoadLibraryCWD

  • HandleBadPtr

  • EnableLegacyExceptionHandlinginOLE

  • RedirectMP3Codec

  • HardwareAudioMixer

See Also

Tags :


Page view tracker