Problems with editing Filter Factory with Resource Editors

Back to technical analysis page

Attention: This page only addresses Filter Factory 3.0.4 for Photoshop/Win32.

Alas, some things are kinda hardcoded in the code, so it is not possible to use a resource editor. If you use a resource editor, it will have the following effects:

  1. Your resource editor will change the order of the resources. Because of hardcoding, Filter Factory will deny building filters ("0x1c001800 read error") anymore because the order needs to be "PIPL, PARM". (???)
  2. The sections after ".rsrc" (resource section) will probably not be correctly updated. Usually, ".rsrc" is at the end of an executable. Here, the section order is ".rsrc", ".edata" (exports), ".idata" (imports), ".reloc". In my case, the editor "ResourceHacker" did update the ".edata" table, but it did not touch the ".idata" directory, resulting in an destroyed executable file. You might not have this issue with other editors.
  3. (At least for "Resource Hacker":) The attribute "DS_3DLOOK" which I added to every dialog in the patch "9_add_3dlook" gets "vanished" when you recompile the dialog. Reason: It is default on Win95 executables and is therefore obsolete. But it is ONLY obsolete if your application is based on operating system version 4.0! Our 8BF file has the operating system compatibility "1.0" (PE header), so DS_3DLOOK is NOT the default value and NOT obsolete and should NOT be removed!
  4. Additional: If the resource directory list is not exactly ordered as in the original 8BF (e.g. if it is recompiled with brc32, and the resources are in the same order, but the resoruce (sub)directories are NOT in the same order), there will be "not enough ram" when opening any dialog box...

Note: Bug in ResourceHacker:
- icon BIN resource contains a 18 byte header! this is ICO and not a BIN!