Windows translated messages: which is the English version?

I'm not asking help in resolving a windows update problem, I would like to find out the English version of a message I receive in my own language. In a Windows 10 notebook I open Settings - Windows Update. There is a warn that says the computer lacks important updates. I push the button for searching the update, after some seconds I receive a message that says something like "The update was not done", no error code is reported. Which is the original English message that translated in my language becomes something similar to "The update was not done" ?

Once I read a web page with all translations for the most important Windows signs, but I cannot find it again.


Solution 1:

EDIT

You did not give the error message. You gave your translation, not useful at all. You said it had update in it. I listed all English messages with update in them for you to review.

Then I told you how to look up your unknown language error message to find your error number. So you replied it doesn't have a number because you didn't do it.

You asked us to guess the error message.

You asked us to guess everything.

No error code was reported which is why you were given the instructions to find it.


This is a list of Windows' error messages with update in the message. I copied c:\windows\system32\en-us\kernel32.dll.mui to somewhere. Then I opened the copied file with ResHacker (http://www.angusj.com/resourcehacker/) and viewed the message table. You'll find your system's messages in the language folder for your language, eg for german DE-DE rather than en-us. This lists the number in hexadecimal.

Not all messages are here. Internet messages are in the internet components, specifically wininet.dll.mui. Note the errors start at 12,000. So 404 File not found is 12,404.

The other main source of error messages are NTStatus messages. They are in the file ntdll.dll.mui.

Note if using calculator to convert to decimal to search, as most programs report decimal, that for 64 bit programs use QWord and 32 bit use DWord. Eg a 64 bit program will report 0x80070005 as ‭2147942405‬ while a 32 bit will report ‭-2147024891‬

See https://winsourcecode.blogspot.com/2019/12/decoding-errors.html for decoding errors.

0x1BC,          "WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel\r\n"
0x29F,          "A device is missing in the system BIOS MPS table. This device will not be used.\r\nPlease contact your system vendor for system BIOS update.\r\n"
0x2D8,          "Windows has detected that the system firmware (BIOS) was updated [previous firmware date = %2, current firmware date %3].\r\n"
0x52B,          "Unable to update the password. The value provided as the current password is incorrect.\r\n"
0x52C,          "Unable to update the password. The value provided for the new password contains values that are not allowed in passwords.\r\n"
0x52D,          "Unable to update the password. The value provided for the new password does not meet the length, complexity, or history requirements of the domain.\r\n"
0x540,          "No more memory is available for security information updates.\r\n"
0x663,          "This update package could not be opened. Verify that the update package exists and that you can access it, or contact the application vendor to verify that this is a valid Windows Installer update package.\r\n"
0x664,          "This update package could not be opened. Contact the application vendor to verify that this is a valid Windows Installer update package.\r\n"
0x665,          "This update package cannot be processed by the Windows Installer service. You must install a Windows service pack that contains a newer version of the Windows Installer service.\r\n"
0x66A,          "The upgrade cannot be installed by the Windows Installer service because the program to be upgraded may be missing, or the upgrade may update a different version of the program. Verify that the program to be upgraded exists on your computer and that you have the correct upgrade.\r\n"
0x66B,          "The update package is not permitted by software restriction policy.\r\n"
0x66E,          "Uninstallation of the update package is not supported.\r\n"
0x66F,          "The update is not applied to this product.\r\n"
0x670,          "No valid sequence could be found for the set of updates.\r\n"
0x671,          "Update removal was disallowed by policy.\r\n"
0x672,          "The XML update data is invalid.\r\n"
0x673,          "Windows Installer does not permit updating of managed advertised products. At least one feature of the product must be installed before applying the update.\r\n"
0x67C,          "The thread context could not be updated because this has been restricted for the process.\r\n"
0xBCC,          "The requested print job has failed to print. A print system update requires the job to be resubmitted.\r\n"
0x1133,         "Fast Cache data has exceeded its max size and cannot be updated.\r\n"
0x1134,         "Fast Cache has been ReArmed and requires a reboot until it can be updated.\r\n"
0x1147,         "A new Secure Boot policy did not contain the current publisher on its update list.\r\n"
0x13DD,         "A non locker code got a request to reserve the lock for making global updates.\r\n"
0x1755,         "\r\nThe Cluster Functional Level could not be increased because not all nodes in the cluster support the updated version.\r\n"
0x1756,         "\r\nUpdating the cluster functional level failed because the cluster is running in fix quorum mode.\r\nStart additional nodes which are members of the cluster until the cluster reaches quorum and the cluster will automatically\r\nswitch out of fix quorum mode, or stop and restart the cluster without the FixQuorum switch. Once the cluster is out\r\nof fix quorum mode retry the Update-ClusterFunctionalLevel PowerShell cmdlet to update the cluster functional level.\r\n"
0x1757,         "\r\nThe cluster functional level has been successfully updated but not all features are available yet. Restart the cluster by\r\nusing the Stop-Cluster PowerShell cmdlet followed by the Start-Cluster PowerShell cmdlet and all cluster features will\r\nbe available.\r\n"
0x1762,         "\r\nThe operation failed because the specified database update condition was not met\r\n"
0x1A33,         "The specified ResourceManager made no changes or updates to the resource under this transaction.\r\n"
0x20BA,         "Schema update failed: duplicate RDN.\r\n"
0x20BB,         "Schema update failed: duplicate OID.\r\n"
0x20BC,         "Schema update failed: duplicate MAPI identifier.\r\n"
0x20BD,         "Schema update failed: duplicate schema-id GUID.\r\n"
0x20BE,         "Schema update failed: duplicate LDAP display name.\r\n"
0x20BF,         "Schema update failed: range-lower less than range upper.\r\n"
0x20C0,         "Schema update failed: syntax mismatch.\r\n"
0x20C3,         "Schema update failed: attribute in may-contain does not exist.\r\n"
0x20C4,         "Schema update failed: attribute in must-contain does not exist.\r\n"
0x20C5,         "Schema update failed: class in aux-class list does not exist or is not an auxiliary class.\r\n"
0x20C6,         "Schema update failed: class in poss-superiors does not exist.\r\n"
0x20C7,         "Schema update failed: class in subclassof list does not exist or does not satisfy hierarchy rules.\r\n"
0x20C8,         "Schema update failed: Rdn-Att-Id has wrong syntax.\r\n"
0x20CC,         "Schema update failed in recalculating validation cache.\r\n"
0x210E,         "The replication synchronization attempt was abandoned because of a lack of updates.\r\n"
0x2114,         "Schema update failed: An attribute with the same link identifier already exists.\r\n"
0x2122,         "The schema update operation tried to add a backward link attribute that has no corresponding forward link.\r\n"
0x213D,         "Schema update is not allowed on this DC because the DC is not the schema FSMO Role Owner.\r\n"
0x2161,         "The replication update could not be applied because either the source or the destination has not yet received information regarding a recent cross-domain move operation.\r\n"
0x2180,         "Schema update failed: The link identifier is reserved.\r\n"
0x2181,         "Schema update failed: There are no link identifiers available.\r\n"
0x2194,         "Schema update failed: No values for msDS-IntId are available.\r\n"
0x2195,         "Schema update failed: Duplicate msDS-INtId. Retry the operation.\r\n"
0x21B7,         "Schema update failed: The MAPI identifier is reserved.\r\n"
0x21B8,         "Schema update failed: There are no MAPI identifiers available.\r\n"
0x2332,         "DNS name in update or prereq is not in zone.\r\n"
0x23A8,         "The specified signing key is not waiting for parental DS update.\r\n"
0x2649,         "Secure update call needs to continue update request.\r\n"
0x00003653,     "SA establishment is not authorized.  You may need to enter updated or different credentials such as a smartcard.\r\n"
0x00003CF3,     "Package failed updates, dependency or conflict validation.\r\n"
0x00003D0D,     "The deployment operation failed because the volume is offline. For a package update, the volume refers to the installed volume of all package versions.\r\n"
0x00003D17,     "A related set cannot be updated because the updated set is invalid. All packages in the related set must be updated at the same time.\r\n"
0x00003D1E,     "Activation is blocked due to the .appinstaller update settings for this app.\r\n"
0x00040172,     "Some cache(s) not updated\r\n"
0x00040254,     "TabletPC inking error code. No personalization update to the recognizer because no training data found\r\n"
0x00E70001,     "The storage pool was deleted by the driver. The object cache should be updated.\r\n"
0x80040170,     "Cache not updated\r\n"
0x8008020D,     "The baseline package version in delta package does not match the version in the baseline package to be updated.\r\n"
0x8008020E,     "The delta package is missing a file from the updated package.\r\n"
0x80080214,     "The compression state of file in baseline and updated package does not match.\r\n"
0x80094013,     "The contacted domain controller cannot support signed LDAP traffic. Update the domain controller or configure Certificate Services to use SSL for Active Directory access.\r\n"
0x80110413,     "Unable to set required authentication level for update request\r\n"
0x80110808,     "One of the objects being inserted or updated does not belong to a valid parent collection\r\n"
0x8028001C,     "TPM 1.2: The TPM hardware device reported a failure during its internal self test. Try restarting the computer to resolve the problem. If the problem continues, check for the latest BIOS or firmware update for your TPM hardware. Consult the computer manufacturer's documentation for instructions.\r\n"
0x802A0109,     "The given time is earlier than the time passed to the last update.\r\n"
0x80310005,     "The boot sector of this drive is not compatible with BitLocker Drive Encryption. Use the Bootrec.exe tool in the Windows Recovery Environment to update or repair the boot manager (BOOTMGR).\r\n"
0x80310006,     "The boot manager of this operating system is not compatible with BitLocker Drive Encryption. Use the Bootrec.exe tool in the Windows Recovery Environment to update or repair the boot manager (BOOTMGR).\r\n"
0x80310024,     "The BitLocker metadata for the encrypted drive cannot be updated because it was locked for updating by another process. Please try this process again.\r\n"
0x8031002A,     "The system partition boot sector does not perform Trusted Platform Module (TPM) measurements. Use the Bootrec.exe tool in the Windows Recovery Environment to update or repair the boot sector.\r\n"
0x803100BC,     "Your computer doesn't support BitLocker hardware-based encryption. Check with your computer manufacturer for firmware updates.\r\n"
0x803100C8,     "Protection is enabled on the volume but has been suspended. This is likely to have happened due to an update being applied to your system. Please try again after a reboot.\r\n"
0x803E011C,     "The notification platform is unable to initialize a callback for lock screen updates.\r\n"
0x80670001,     "Optimistic locking failure. Data cannot be updated if it has changed since it was read.\r\n"
0x80860004,     "Online Id password must be updated before signin.\r\n"
0x80860005,     "Online Id account properties must be updated before signin.\r\n"
0x87C51012,     "Cannot update forwarder: The forwarder passed to the function is of a different type\r\n"
0x8802D006,     "Updates are needed in order to use the sync engine.\r\n"
0x88980098,     "MROW attempt to update the data failed because another update was outstanding.\r\n"
0x8898040E,     "UCEERR_UNCHANGABLE_UPDATE_ATTEMPTED\r\n"
0xC0380004,     "A majority of disks failed to be updated with the new configuration.\r\n"
0xC0380037,     "Failed to update the disk's partition layout.\r\n"
0xC0380053,     "All disks failed to be updated with the new content of the log.\r\n"
0xC03A0022,     "VHD file is changed due to compaction, expansion, or offline updates.\r\n"

Decoding Errors

Windows errors (smallish numbers) and COM HResults (typically, but with exceptions, start with an 8 as in 0x80040154) are defined in WinError.h, except 8007nnnn where you look up the Window error number that it contains.

As a general rule Windows errors are less than 65,535 (0xFFFF). Errors starting 0x80000001 are Component Object Model (COM) HResults. Errors starting 0xC0000001 are NTStatus results. Errors starting 0xD0000001 are also NTStatus values returned in a HResult.

NTStatus errors (typically but not always start with an C as in 0xC0000022) are defined in NTStatus.h.

Note internet errors (12,000 - 12,999) are windows errors but are specified in wininet.h also available above.

There are errors defined in other .h files. But 99% are in the three above.

Structure of HResults and NTStatus Codes

The most significant bit in HResults, and the two most significant bits in NTStatus are set on error. Hence Hresults start 8 on error and NTStatus starts C on Error. The next 14 or 15 bits are reserved and some specify the facility - what area the error is in. This is the third and fourth number when reading hex. EG 0xnn07nnnn - An HResult facility code 7 is a normal Windows' error (returned from a COM program - hence it's returned as a HResult). Facility codes are defined in Winerror.h for HResults and NTStatus.h for NTStatus codes. They are different.

To Decode 0x8003nnnn Errors

HResults with facility code 3 means the HResult contains OLE Structured Storage errors (0x0 to 0xff). These are the same as Dos error codes. These don't seem to be in Windows' header files and the list of codes is at the end of this post.

To Decode 0x8004nnnn Errors

HResults with facility code 4 means the HResult contains OLE errors (0x0 to 0x1ff) while the rest of the range (0x200 onwards) is component specific errors so 20e from one component will have a different meaning to 20e from another component.

This is why the source of the error is extra important for errors above 0x80040200.

To Decode 0x8007nnnn Errors

HResults with facility code 7 means the HResult contains a Windows' error code. You have to look up the Windows' error code not the HResult.

To decode 0x80070002. The 0x means it's a hexadecimal number, the 8 means error, the first 7 means it a windows error, and the rest of the number, 2, is the actual Windows error.

To look up the error we need it in decimal format. Start Calculator (Start - All Programs - Accessories - Calculator) and choose View menu - Scientific, then View menu - Hex. Enter 2. Then View menu - Decimal. It will say 2.

Start a Command Prompt (Start - All Programs - Accessories - Command Prompt) and type

net helpmsg 2

and it will say

The system cannot find the file specified.

To Decode 0x8019nnnn Errors

HResults with facility 0x19 are HTTP errors. Codes under 16,384 (0x4000) are the same as HTTP errors, eg HTTP status 404: The requested URL does not exist on the server is 0x80190194 (0x194 = 404). Codes 16,384 and higher are BITS specific.

To Decode 0xDnnnnnnn Errors

HResults starting 0xD are an HResult with a NTStatus value in it. Just cange the lead D to a C and treat as an NTStatus (Hresult = NTStatus OR 10000000).