USAGE: RESEX -H -F -O -T -X -I -B -Q -U<.RES file with replacements> -D -A -Z Resource Extractor for OS/2 RESEX utility enables the user to (1) extract Icons, Dialogs, Menus and other resources from .EXEs or .DLLs to reuse them in other applications, (2) add, modify or replace Dialogs, Icons, Menus etc. in existing .EXEs or .DLLs ,(3) remove arbitrary resources from .EXE or .DLL and, finally, (4) add arbitrary data string to .EXE or .DLL to be able to retrieve it later as RT_RCDATA resource RESEX.EXE processes 32-bit (LX) .EXE or .DLL files and does the following things: 1. Displays Resource Table contents showing each resource type, name, size, file offset and flag bits for the object that contains resource. Parameter -F describes file to be processed. The following is an example: RESEX -Fabc.exe 2. Extracts resources. Extracted resources will be stored as Rnnnnnn.hhh in a directory given by parameter -O. Here, nnnnnn is a resource name, hhh is a resource type (hexadecimal constant). For example, Dialog 100 will be stored as R100.4. If parameter -T is used, it defines resource type to be extracted. In this case, you may use parameter -X to define file extension. If you want to extract Icons or Bitmaps and create .ICO or .BMP files ready to be processed by ICONEDIT, use parameters -I or -B. To extract RT_RCDATA resource without resource header, use parameter -Q. The following are examples: RESEX -Fabc.exe -Oc:\res Will extract all resources from abc.exe and will save them in c:\res directory RESEX -Fabc.dll -Oc:\res -T4 -Xres Will extract all DIALOG resources (type=4) from abc.dll and will save them in c:\res directory. Files will have .RES extensions. Later you can use DLGEDIT utility to modify them and create new .RES and .DLG files. At this point you can easily reuse them in you application. RESEX -Fabc.dll -Oc:\icons -I Will extract all Icons from abc.dll and will save them in c:\icons with extension .ICO. Note that if you use RESEX -Fabc.dll -Oc:\icons -T1 -Xico , that will also extract all Icons but results will include 12-byte resource prefix that will precede icon bytes. 3. Replaces resources in the target .EXE or .DLL. Replacements must be in the resource file given by parameter -U. If you want to preserve target file's day/time stamp, use parameter -Z. Examples: If you want to modify a dialog in abc.exe: (1) extract all Dialogs by using RESEX -Fabc.exe -Oc:\res -T4 -Xres (2) locate your Dialog by name (the file name will be Rnnnnnn.RES),modify it using DLGEDIT and save it (for example, in abc.res) (3) execute RESEX -Fabc.exe -Uabc.res -Z To modify an icon in abc.exe: (1) extract all Icons by using RESEX -Fabc.exe -Oc:\icons -I (2) find your Icon by name and modify it by using ICONEDIT (3) create .RC file with the following contents: ICON name-id icon-file-name then compile it creating .RES file (say, abc.RES) ; (4) and, finally, run RESEX -Fabc.exe -Uc:\res\abc.res -Z Note that any number of resources can appear one after another in replacement file. To concatenate resources, use COPY /b 4. Removes resources from the target .EXE or .DLL. In this case, parameter -D describes resource names to be removed (comma separated list), parameter -T describes resource type. Note that if -D list is empty, all resources will be removed. The following are examples: RESEX -Fabc.dll -D12,14,245 -T9 -Z Will remove data resources (type = 9) 12, 14 and 245 from the target file abc.exe. RESEX -Fabc.exe -D -T9 Will remove all data resources from the target file abc.exe 5. Adds arbitrary data string to the target .EXE or .DLL files as a data resource. Use parameter -A that has the following format: -A, If starts with @ symbol, the following characters in describe path name of the file containing the data to be added. The following are examples: RESEX -Fabc.exe -A100,NevaObjectTech Will add string "NevaObjectTech" to abc.exe as a data resource number 100. Note that if you want to use space characters inside your string, use double quotes: RESEX -Fabc.exe "-A100,Neva Object Tech" RESEX -fabc.exe -A1000,@c:\config.sys Will add contents of c:\config.sys to abc.exe as a data resource 1000. Note that if resource already exist in the target file, it will be replaced. To extract data, you may use -Q option that extracts data resources without resource header: RESEX -fabc.exe -O. -Q Will extract "Neva..." string to R0100.DAT file and former config.sys to R1000.DAT file in the current directory. You can extract data during execution of abc.exe by using DosGetResource API. This functionality is very helpful, for example, to bind variable data (password, configuration data, etc.) to .EXE or .DLL and to retrieve this information later in a run time. BTW, RESEX uses that to store help information. To extract this text: 1. copy RESEX.EXE to TEMP 2. execute RESEX -fTEMP -O. -Q 3. Finally, you will find this text in R1000.DAT DISCLAIMER: This product is supplied "AS IS", and without any warranties. Neva Object Technology, Inc. accepts no responsibility for any loss or damage; whether physical, financial, emotional, social, mental, marital, or otherwise that may result from the use of this product If you have any comments or suggestions please feel free to contact us at Neva Object Technology, Inc 1409 Strattford Street, Suite E Brea California 92621 USA Phone: (714) 671-4107 Fax: (714) 256-1916