Having considered the problem further, I believe the best solution (to include all language files) would be as follows :- 1) Create text files (notepad) containing all language strings (and keys). 2) Add these files as BINARY resources to a separate language module. 3) Write necessary code to cache the required strings when a language is selected (at runtime). I would place the code to extract the strings, etc. in the language module, however, since there is a feeling that the DLLs should be discarded, some people may disagree. This solution would, after all, add a third DLL. However, this general design concept could be adapated to a pure Delphi solution with little difficulty. It would simply require a resource file to be maintained and included in the ZipMaster.pas module. The resource file could be built using the BRCC32.exe utility that is shipped with Delphi. James Turner ----------------------------------------- Email provided by http://www.ntlhome.com/ ----------- To unsubscribe from this list, send an empty e-mail message to: delphizip-request@xxxxxxxxxxxxx and put the word unsubscribe in the subject.