Windows软件可保存任意应用程序状态


14

当您“关闭”状态时,VM软件可以很好地保存状态,从而可以立即返回到先前状态。

Windows是否有某些应用程序可以让我对任何任意软件执行相同的操作?它可能允许我通过附加到每个窗口的shell命令或按钮来保存/恢复状态。

编辑:为清楚起见,有两种类型的应用程序:保存自己状态的应用程序和保存他人状态的应用程序。保存自己状态的程序就像Chrome,它会在加载时重新加载您上次打开的窗口。

那不是我要问的;我要的是一个可以保存其他应用程序状态的应用程序,就像VM软件一样。但适用于任何应用。(一个简单的测试将是加载notepad ++,键入一堆东西,然后保存状态;在复位状态下,您应该能够多级撤消编写的许多内容,就好像您从未关闭过该应用程序一样。 )



+1有趣的问题。由于其他类似的问题都没有得到任何好的回答(如果有的话),我对此表示怀疑。
Nifle 2011年

@Nifle同意。原则上,这应该是可能的(保存应用程序的内存转储,重新启动时重新加载)-所以我感觉它存在;我只是找不到能做到这一点的应用程序。
ashes999 2011年

阅读:休眠状态。
Hello71 2011年

就我而言,休眠不是解决方案。在购买SSD磁盘之前,我一直是沉睡的用户。检查@Matthew A. Schneider的答案。
Mario S

Answers:


3

冒着被否决的风险,我发现我必须给出否定的答案。

许多人都希望这样做,包括我自己。在了解这种产品不存在,甚至不存在之前,我也一直在寻找这种产品。也许可以对挂起/未挂起进行有限的实现,但不能采用一般的实现。

例如,考虑暂停CD上具有打开文件或Internet连接打开的应用程序。现在想象一下要“挂起”和“取消挂起”它需要做什么:将所有文件和连接保存为暂停状态,然后重新创建为未暂停状态,可能要验证CD驱动器并打开文件,重新建立Internet连接-建立所有进入网站的登录信息,等等。

这太复杂了,无法在任何操作系统中实现,并且也将是一个安全漏洞,如果在登录后立即“捕获”了应用程序的状态,就无需输入登录名。要正确地挂起一个应用程序,几乎需要保存整个操作系统的状态(确实存在)。


4
如果它可以休眠,则没有理由在OP描述的情况下不起作用。当然,您将不得不重新建立文件句柄并管理安全性,但是没有人说这会很容易。就是说,转储原始内存需要只有操作系统才应该拥有的特权。您将必须认真信任该应用程序才能为其授予OS特权(假设甚至有可能授予其这种特权)。
Xr。

@Xr:休眠适用于整个计算机,我确实说过它确实存在(尽管不能保证应用程序在唤醒时不会失败)。实际上,“一个应用程序”情况并不存在,因为应用程序的状态是操作系统状态的一部分。就像您说的那样,这种机制是可行的,但是它必须内置在操作系统本身中。在用户空间中运行的应用程序无权访问系统表和驱动程序,这也需要非常专业的知识。
harrymc

您说的很复杂。我对此提出了一个SO问题,答案正如预期的那样,“由于所有这些问题,构建起来非常复杂”。
ashes999 2011年

5

如果没有虚拟化,Microsoft Windows上唯一的选择是暂停/继续应用程序。可以做到这一点的工具是PySuspendPausep。这将不允许您执行任何形式的“撤消”。

尽管有诸如QubesOS之类的虚拟化产品可以完成您正在寻找的Linux系统,但是如果没有Microsoft的直接支持,您将不太可能在Microsoft Windows上看到此产品。但是,即使使用QubesOS,也应该可以运行VirtualBox或VMWare Workstation之类的虚拟化产品来运行Windows应用程序。您还可以通过wine来运行Windows应用程序,以充分利用QubesOS抽象的优点。

或者,您可以运行多个VM,在每个VM下运行一个单独的Windows副本。某些版本的MS Windows允许您在单个许可证下运行虚拟化的操作系统的一个或多个副本。


是的,在最坏的情况下,我总是可以将PC作为“瘦”客户端,并在VM内运行所有内容(对于VM Ware,性能会降低10%)。那不是一个糟糕的备份计划-除非您与想知道自己在做什么的非技术人员共享计算机:)
ashes999 2011年

这些工具是否允许您暂停,关闭应用程序,然后从先前的状态恢复?
ashes999 2011年

1
PySuspend和Pausep发出一个与POSIX SIGSTOP / SIGCONT信号等效的Windows。这不允许应用程序完全“关闭”,它不会释放任何内存分配。他们只是停止使用任何CPU的进程,直到您取消挂起/恢复该进程为止。
ewindisch 2011年

1

这是可行的。查看以下内容。

Twinsplay:http://www.twinsplay.com/learn-more-about-twinsplay

SmartClose:http : //download.cnet.com/SmartClose/3000-2094_4-10784165.html


1
为什么呢?他们如何解决问题?
ale

我认为这个答案是不公平的。遵循@harrymc答案,这些是ashes999请求的应用程序的不错选择。现在,我正在寻找像灰烬一样的东西,因为我有一个SSD磁盘,而且我不想休眠。从这个意义上讲,SmartClose在我看来是一个我正在尝试的有趣解决方案。
Mario S

SmartClose(ghacks.net/2008/12/03/smart-close)和Twinsplay可能也只是重新打开窗口并依靠应用程序本身来保存状态
mic
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.