Az erőforrások csak egy szabványos struktúra meghatározott állandókkal, de végül csak egy rekurzív struktúra egy pufferhez, függetlenül attól, hogy mit tartalmaz ( itt van a szokásos elrendezés).
Elméletileg bármit tartalmazhat - bármilyen mélységet, ciklust, érvénytelen típust stb ..., de akkor a szabványos API-k nem működnek velük.
Tehát meg kell győződnie arról, hogy ha titkosítja vagy tömöríti az erőforrásokat, ezeket az API-k bármelyikének használata előtt vissza kell állítani (mind az erőforrás könyvtár struktúráját, mind azok tartalmát), ami nem biztos, hogy nyilvánvaló.
Különösen néhány erőforrást fognak használni az operációs rendszer által, még a fájl végrehajtása előtt, például az első ikonok, a manifeszt és a verzióinformációk - így valószínűleg ezeket érintetlenül szeretné megőrizni.
A triviális erőforrás-szerkesztés megakadályozásának egyszerű módja egy adatfolyam futtatása lenne rejtjel a kiválasztott erőforrásokon, a végső bináris fájlon (miután a linkelő helyre tette őket és létrehozta az erőforrás bejegyzést a DataDirectory-ban), és ezeket az erőforrásokat dem és vagy a program inicializálásakor.
Ha kész megoldást keres, sok jó csomagoló, például a PECompact támogatja az erőforrások tömörítését, megakadályozva ezzel a külső erőforrások szerkesztését.