Just freeze an application (suspend the CPU, save its state to disk) and 'defrost' it when I want to use it 4 weeks later.
While some systems do have such a technology, it takes a lot of effort on both the operating system developer's and the application developer's parts. So, in practice, consider the answer to be no. (Examples of systems where this can work are Unix variants where core dumps are restartable and Lisp implementations that have a dump facility. Even then this may behave strangely if the application has connections to the outside world such as open files.)
You can run the application in a virtual machine (e.g. Virtual PC), and hibernate (save the state of) the whole VM. You will need a suitable Windows license in the VM. If you start using VMs, expect your RAM usage to go way up (if you're running a host OS and a virtualized OS, the memory requirements add up).
Many people would wish for this, including myself.
Think for example about freezing an application that had an open file on the CD or an open Internet connection. Now imagine what it would take to "freeze" and "unfreeze" it: All files and connections to be saved, then re-created, CD drive maybe to be verified and file opened, Internet connections to be re-established with all login info into the site, etc etc.
This is just too complex to implement in any operating system, and would also be a security hole.