Search For Blogs, Submit Blogs, The Ultimate Blog Directory RSS Directory Blog Directory & Search engine Directory of Computers/Tech Blogs

Sitemap

Syndicate

Syndicate content

User login

Who's online

There are currently 0 users and 1 guest online.

Recent comments

Delphi 7 - RLINK32: Unsupported 16bit resource in file ...

Recently at my job we had trouble compiling and linking our software using Delphi 7.

It seemed that the compiling went fine, but after Delphi compiled the source files, Delphi's linker more and more often showed errors or just crashed. During the linking process more and more often we encountered the error:

RLINK32: Unsupported 16bit resource in file ...

The .dfm file that seemed to be the cause was different each time we compiled our project.

This also caused the 'out of memory' errors we encountered as a result more and more often.

Restarting our computers or restarting Delphi didn't help. The only way we could compile our project was by using Delphi's command-line compiler DCC32.EXE, however then we were not able to use Delphi's integrated debugger.

All of the .dfm files we use in our project we save as text files and not in binary format, because we use the open source version control software 'Subversion'. It's our experience that sometimes some .dfm files suddenly are no longer in text format, but in binary format.

It was almost certain that one or more of our .dfm files were damaged, but because we have so many .dfm files in our project it was impossible to find the .dfm file(s) that caused the problem.

A few weeks later I opened all of our source files in our project and found out that upon opening of two source files Delphi reported an error that an image on the form was corrupted. After restoring the corrupted images, the resource errors were gone. In case you have a similar problem, just go to project file (view source) and open and close each file (press Ctrl-Enter on the file name in your project) and see whether Delphi reports an error upon opening a file.

I read on internet some people had the same problem and a corrupt .dfm file was the cause of the problem with these people. Someone found out in a certain .dfm file he encountered one or more line feed - carriage return sequences in the .dfm file (binary the following sequence: 0D 0A). After replacing these binary 0D 0A sequences with only a carriage return 0A, he was able to solve the problem.

I was able to solve the problem by using a tool called: 'dfmconverter'. I used this tool to convert all of our projects' .dfm files to binary format and after that convert all .dfm files back to text format again.

This tool can be downloaded from the following website: http://www.href.com.

By the way, we also tried to do the same using 'Subversion's' convert.exe program, but this didn't help. With 'Subversion's' convert.exe you can also convert .dfm files from text to binary format and vice versa.