I’m making a translation of a certain program designed for adjustment, setting and troubleshooting of specific devices it was made for. The reason is, that my colleagues can’t speak English or any other supported languages, so currently I’m the only person in the workshop who can actually use it.
I managed to crack the LANG files, so my job is pretty much done as all the difficult parts of the program are translated. The problem is that the simple phrases like “Yes”, “No”, “Warning”, “Error”, etc. weren’t translated, since they are not part of the LANG files, but are loaded from Windows dialog GUI or something (I’m sorry, I don’t know how it is officially called in English).
When changing the language within the supported languages, the program automatically changes the Windows dialog GUI to match the chosen language, however since my translation is recognized as unofficial (uknown), it forces English Windows GUI there instead of the one set in the Windows settings.
Using the “Process Monitor” from Microsoft I guessed that the “netmsg.dll” file should be responsible for the language choice (it is definitely called in the important moments), so I thought that if I would modify it to recognize “en-US” as another language in its code, it could solved my issue. Or maybe edit the “netmsg.dll.mui” file and use it instead of the original one.
The problem is that I have no English “netmsg.dll.mui” file to use. I was able to find one in French, but I can’t speak French, so I don’t know if it what I’m looking for. Obviously, I have no “netmsg.dll.mui” file for my native language either.
I tried to open the “netmsg.dll” file in a hex editor, but even though I successfully edited quite a lot of files with it before, this one makes no sense to me, so I don’t know what to change.
Am I on the right track? Is the result even worth the effort of doing it this way?
Thank you.
Tomáš Čada is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.