Создание образа программы

Посоветуйте программу, которая бы позволяла сохранить текущее состояние другой программы в файл и восстанавливать ее по требованию.

Ну например - я в родительской программе (обработчике) указываю, что мне нужно сделать образ ворда. В результате получаю файл, который при восстановлении покажет то состояние ворда, которое было на момент сохранения образа.

Фактически это режим гибернации для отдельной программы.

Где-то вроде я видел такую прогу, но сколько не ищу, не могу найти.