I was working on my portable apps these few days. Feature such as replacing path name in application config file is implemented. This is because some applicationi store hard coded paths in registry, ini file or application specific config file. These hard coded paths have to be updated before launching of the application, especially, a different drive name is assigned.
In the process, I found a bug with StarDict. If an Explorer window is opened with the word "StarDict" as title, StarDict cannot be launched. My guess is that StarDict is using the title to determine whether StarDict should be launched or not. This is to prevent running the second instance of StarDict.
Another bug found was with the NSIS template, ClearErrors was not called before FileRead. This will cause problem where the previous operation error is treated as FileRead error. The consequence is that the registry file is deleted after portable app execution.