Здравствуйте mda, Вы писали:
AF>>Так это, контест надо тоже сохранять, причем для всех потоков. При восстановлении сначала считывать память, потом создавать недостающие потоки в остановленном состоянии, восстанавливать их контекст, после чего отпускать их на волю.
mda>А как создать недостающие потоки, если с помощью win api невозможно получить адрес потоковой функции?
mda>или я что-то просмотрел?
А он не нужен. Все что нужно иметь — это память процесса и содержимое регистров каждого потока. При восстановлении процесса можешь указать любой стартовый адрес потокам, все равно ты будешь делать SetThreadContext, прежде чем позволишь им выполняться.
Только это все равно работать не будет (мог бы и раньше сообразить — старею). Мало сохранять память процесса, надо еще сохранять объекты ядра. Скажем, программа имела открытый файл в момент сохранения. При восстановлении кто его заново отрывать будет? А вот это, батенька, я даже за деньги делать не буду