I always thought that it is not possible to rename an executable that is currently running. Turns out I was wrong (happened before). It works fine for many executables, but not for all of them. In particular it does not work for the executables of our internal tools. Windows complains that the file is in … Continue reading Why renaming a running executable can fail
The homepage of GnuGetText for Delphi (dxgettext) seems to be down (it redirects to www.delphidk.dk which my DNS cannot resolve). Here is the last archived version on the Internet Archive.
I fixed a bug in the dxgettext executable which made it add wrong ressource string names to the po files which in turn made the msgmergePOT tool select wrong translations. You will have to compile your own executable to get this bugfix. The source code is in the project's svn repository on SourceForge. Also I … Continue reading some dxgettext improvements
I have been using two tools to add additional data to my executable files in post build scripts for years: assemble.exe from GNUGettext for Delphi MakeJclDbg.exe from Project Jedi Both tools open the freshly built executable and append chunks of data to it. And both started to fail with the error "[project].exe is open in … Continue reading project.exe is open in another program errors
A few weeks ago, Sue King contacted me because there was a problem with using dxGetText together with the Nexus DB components. For Unicode aware Delphi versions gnugettext.pas declares a function utf8decode which calls System.UTF8ToWideString. After replacing a call to utf8decode with UTF8ToUnicodeString the problem went away. Since I don't want to break backwards compatibility … Continue reading GnuGetText.pas using Utf8ToUnicodeString instead of Utf8ToWideString
The dxGetText installer available from SourceForge has been quite outdated for a while. Via this StackOverflow answer I got this link, where somebody actually went through the trouble to update the tools and create a new installer for them. He also provides the sources he used for the tools. I hope they are based on … Continue reading Using dxgettext on Windows 10
gnugettext.pas has got a conditional define called DXGETTEXTDEBUG. If it is defined, various debug messages are written to a MemoryStream. That won't help much, if you can't read that stream, so you need a way to write that stream to a file. Guess what, that's easily possible. Just call DefaultInstance.DebugLogToFile passing it a file name … Continue reading Enable debug logging in gnugettext.pas
Today I had an interesting bug to fix: I used a form's Classname (Yes, I have a reason not to use the Name.) to persist its size in the registry and wondered why it didn't work. Looking at the registry entries I found, that there was an entry with the class name suffixed by a … Continue reading Classname with !dx suffix?
By default, if no translation for a language is available, dxgettext will not do any translation but use the strings as they are in the source code. Sometimes this is not desirable. e.g. Your customer does not understand the source language (e.g. your source language is not English but say German) You are using dxgettext … Continue reading Setting a default language with dxgettext
GORM is an editor for .po files (in case that link is dead, see the Internet Archive) that was originally written by Lars Dybdahl and to which I have been contributing quite a few features in recent years. Since Lars is too busy to do a release and currently even the original download doesn't seem … Continue reading GORM experimental release