cdrLabel Localization Readme - Earle F. Philhower, III cdrLabel can read its resources (dialogs, all text strings, menus) from a DLL file instead of the main application, so you can convert cdrLabel to a different language by merely converting these resources and making a DLL file called "LANGUAGE.DLL". Enclosed in this zip is everything you need: language.rc - The actual resources, text to be translated language.dsw - MSVC 6.0/.NET project to let you compile the DLL yourself (others) - support files for the MSVC compile. ************************************************************************** If you are working on an upgrade translation, then you should open the RC file in a text editor and search for the string "----****" to find the places where new resources have been added to an old DLL file. If you save or edit the RC file in MSVC, these notes will be lost. ************************************************************************** The easiest way to convert things is with MSVC, if you have it. Just open the workspace and use the resource editor to change all the text you see. It is important to NOT ADD OR DELETE OR RENUMBER ELEMENTS (such as static text, buttons, etc) as cdrLabel is expecting there to be a specific number of buttons in the DLL, and will not take kindly to getting unknown button hits. If at all possible don't resize dialogs or controls, either. If you do have to resize things let us know which controls so that we can make them a little bigger in the English version so the next translated version won't need to resize things. Also, be sure to compile in Release mode. If you don't have MSVC, you can do everything you need to do in NOTEPAD. Just open "language.rc" in notepad, and change all the text you see in "quotes". It is important to NOT CHANGE ANYTHING OUTSIDE THE QUOTES. To make a quote in your string do 2 quotes in a row: ex: IDS_NO_FILES_FOUND "No files found on disk ""%c:\\""" Ampersands "&" before a letter cause that letter to be underlined, and lets the user hit ALT- to select that letter's control (like the "F" in the "File" menu.) ex: DEFPUSHBUTTON "&OK",IDOK,24,192,50,14 For all translators: . If you see something like "%c" in a string, that's going to be replaced with the drive letter. ex: IDS_NO_FILES_FOUND "No files found on disk ""%c:\\""" . If you see something like "%s" in a string, that's going to be replaced with a string (normally a size or position). ex: IDS_CANT_FIND_REG "Can't find ""%s"" in program directory, please re-install" . All %s, %c, %d, %l, %etc. must be preserved in the strings. If there are four %s in the original string, there must be four %s in your translated string ex: IDS_TITLE_S_S_BACK_COVER "%s - %s - Back Cover" (original) IDS_TITLE_S_S_BACK_COVER "%s - %s - Derrière Jacquette" (translated) When you have gotten a few menus translated, either compile the project yourself or send it to us in an email at support@cdrlabel.com to make sure things are still OK. When you've finished please send us the .RC and .DLL (if you have compiled it yourself). We would like the RC because on future cdrLabel versions we will try to automatically update the resources, so that you don't have to re-translate everything for the next version. Any problems, questions, etc. feel free to contact us at support@cdrlabel.com Thanks for your help!