The only issues you may run into are when something was placed in RAM during installation, such as a DLL file placed in \Windows or a registry key that happens to be required for the program to execute. Both are relatively rare since most installers place any DLL files in the same folder with the application, and few programs actually require registry entries to work.
(Some of the keys are re-entered automatically the first time you run the program anyway.
)
Similar to this, if the program requires a runtime, such as eMbedded Visual Basic, PocketC, or .NET Compact Framework, the runtime files will need to be re-installed if they're not in ROM.
(Of these, the eVB files are the only ones placed in ROM on any CE 2.11 devices, and even that varies from one device manufacturer to another.
)
You can prevent a CAB file from erasing itself after installation by pointing to a CAB file, selecting File -> Properties, and checking the box marked 'Read-Only.'
Have I succeeded in confusing you further?