Home > English > JVCL dev tools

JVCL dev tools

June 24th, 2011

Do you need to work with the same code in Delphi 7 and Delphi 2010 in parallel? Need to delete some properties from dfm-files? Or maybe you want to replace all Rx-components and functions with JVCL code? Or maybe you want to create dpk-files for all existing Delphi versions with a single click?

If you answered yes at least one time, then you might be interested to know about JVCL developer tools.

JVCL (Jedi Visual Component Library) contains few great utilities, that can help to improve component development process. These utilities located in JVCL\devtools folder. Most of utilities described in file devtools.txt. This post adds few comments to those descriptions.

Most interesting utility is JVCLConvert, which allows easily converting project from RxLib to JVCL. Developers of component libraries may be interested in PackagesGenerator tool, which can create project files (dpr and dpk) and project group files for different Delphi versions.

To compile utilities, file CompileDevTools.bat should be run. However, if you have several Delphi versions installed on your PC, it’s better to compile utilities manually in IDE. You can open all utilities projects via devtools.bpg project group.

I ran into situation, when form processed with DFMCleaner couldn’t be opened in Delphi 6. I think it happened (I didn’t research for actual reasons), because DFMCleaner was compiled using Delphi 2010 compiler when via CompileDevTools.bat. After I recompiled DFMCleaner manually in Delphi 6, it worked fine.

 

Warning: before using any of tools, make backup copy of your sources. Or better use version control system (f.e. Subversion).


JVCLConvert

Scan source files and replaces one string with another using dictionary. JVCL contains dictionaries to convert:

  • RxLib to JVCL;
  • RaLib to JVCL;
  • design eXperience to JVCL;
  • dictionary to format keywords in CamelCase;
  • other libraries that were merged with JVCL to JVCL;
  • also dictionaries to upgrade from older version of JVCL.

Although, some of the dictionaries are not up-to-date, so you may need to edit them manually. I will blog later about my changes to RxLib2JVCL dictionary.

MakeRC

Creates file new.RC, from files in given folder. Each row in result rc file will look like:

<NAME> BITMAP "<NAME>.BMP"

Created rc file can be compiled to DCR-file with command:

brc32 new.rc -r -fonew.dcr

MakeDOF

Creates DOF from template. Scans subfolders and overwrites all existing files.

MakeCFG

Creates CFG file from template. Scans subfolders and overwrites all existing files.

Bpg2Make

Creates makefile (.MAK) from project group file (.BPG).

JConvert

JConvert converts DFM files from binary format to text and vice versa. Difference from convert.exe, that is shipped with Delphi, JConvert processes only those DFM files, that actually need to be converted. Also has -c(heck) parameter, which allows to know how many DFM can be converted, without processing files.

 

isu

Removes unused records from dfn-files (translation files). Works with current folder and subfolders. Does not make backup copies. Does not have any options.

ErrLook

Delphi clone of ErrLook tool from Visual Studio. Can search for error codes. See documentation. To compile you’ll need HTMLHlp.pas from http://delphi-jedi.org (API Library Files)

DFMCleaner(dc)

Removes unsupported properties from DFM files. Properties to be removed are read from the list. Nice tool to work with dfm-files that should be opened in different Delphi version. Has predefined lists of properties that appeared only in latest Delphi version (f.e. ExplicitHeight).

 

dxgettextResstr

Extracts to resourcestring all strings compatible with dxgettext "_(string)" . See devtools.txt.

ReadPalettes (Florent, rom)

Extract information on installed components in CSV file. Should be installed as expert. See usage.txt for more information.

I couldn’t compile it.

MakePNG

MakePNG. Convert BMP to PNG. Requires 3d party component TPngImage from Gustavo Daud. (http://pngdelphi.sourceforge.net/)

Res2Bmp

Extracts bitmaps from RES and DCR files and saves them as BMP. Requires Resource Utilities and Graphics Utilities from Colin Wilson. (http://www.wilsonc.demon.co.uk/delphi.htm)

Tags: , ,
Comments are closed.