Wiederherstellen von geöffneter Software nach einem Neustart in Windows

36

Ich stelle fest, dass am Ende eines langen Tages manchmal eine große Anzahl von Programmen ausgeführt wird. Alles was ich morgen brauchen werde. Normalerweise ist das kein Problem, ich kann die Maschine einfach abschließen und morgen wiederkommen. Mein Problem tritt auf, wenn Windows Update mitten in der Nacht gestartet und der Computer zwangsweise neu gestartet wird. Das schließt wiederum alle meine offene Software. Ich speichere natürlich regelmäßig alles, damit ich nichts verliere, aber ich verschwende Zeit damit, all diese Ressourcen bei jedem Neustart wieder zu öffnen.

[BEARBEITEN]

Ich sollte klarstellen, dass ich meinen Computer immer noch neu starten möchte, wenn ein Update ausfällt. Das Verhindern des Neustarts verzögert das Problem nur bis zu einem späteren Zeitpunkt. Ich hätte genauer sagen sollen, dass ich meine Arbeitsumgebung nach einem Neustart aus irgendeinem Grund wiederherstellen möchte. Dinge wie geplante Wartung, Stromausfall, Updates und Softwareinstallationen.

[BEARBEITEN]

Ich kann sie nicht einfach so einrichten, dass sie beim Start gestartet werden, da sich diese Dateien von Woche zu Woche ändern. Ich brauche also etwas, das überwacht, was ich geöffnet habe, und mir die Option gibt, diese Software-Sitzungen wiederherzustellen, wenn ich mich wieder anmelde.

Hat jemand Vorschläge, was ich tun kann? Ich wäre sogar bereit, Software zu kaufen, um dies für mich zu tun, wenn dies die einzige Option ist.

Vielen Dank

Doltknuckle
quelle
Eigentlich erinnere ich mich, dass ich irgendwo gelesen habe, dass Win7 eine Funktion wie diese haben sollte, obwohl ich vermute, dass sie es nicht rechtzeitig zur Veröffentlichung fertigstellen konnten. So kann es in der Zukunft kommen.
Eidylon
1
Der Befehl "shutdown / g" kann anscheinend mit der automatischen Absturzwiederherstellungsfunktion eines Programms gekoppelt werden, um 75% meiner Suchanfragen zu erfüllen. Ich muss noch mehr Tests durchführen, um zu sehen, ob dies funktioniert.
Doltknuckle
1
Der Befehl zum Herunterfahren funktioniert nicht wirklich wie erhofft ... Ich brauche wirklich eine Möglichkeit, die aktuell geöffneten Dateien zu überwachen. Dann kann ich einfach ein dynamisches Skript erstellen, um diese Dateien neu zu starten.
Doltknuckle
1
6 Jahre später und dies ist immer noch kein Windows-Feature ... OSX hat dies seit Jahren!
GiH
7 Jahre und Zählen .....
iAmLearning

Antworten:

16

Es ist so ärgerlich, dass es für dieses Problem noch keine elegante Lösung gibt!

Es passiert uns allen: Windows kommt nur langsam zum Stillstand (eine Art Speicherverlust verursacht dies, da normalerweise 132 Registerkarten in Chrom, 57 in Firefox und 24 Fenster insgesamt geöffnet sind und ein Komplex ausgeführt wird) Der Vorgang, bei dem alle zur selben Zeit ausgeführt werden, wie Sie einen Job neben dem anderen erledigen, und der so langsam wird, dass Sie tatsächlich Zeit damit verschwenden, nur darauf zu warten , dass auf Ihrem Computer etwas passiert Computer ..... Sie MÜSSEN also einfach Ihre Sitzung zurücksetzen, die sich in den letzten 5 Wochen langsam aufgebaut hat, und schließlich dem Albtraum erliegen, der nach den gefürchteten Fenstern Ihr kompliziertes Durcheinander von Fenstern und geöffneten Dateien und Explorer-Ordnern wiederherstellt Neustart.

GUT.

Ich habe viel Zeit damit verbracht, nach eleganten Lösungen zu suchen, die es nicht zum Albtraum machen, und das ist mein Fazit und meine derzeitige "Lösung".

Ich habe nur ein Programm gefunden, das sowohl die Programme als auch die Dateien, die sie geöffnet hatten, speichern und wiederherstellen kann - und es ist wirklich reibungslos, meistens. Es ist Twinsplay (Professional Edition) . ( Sowohl CacheMyWork als auch SmartClose stellen nur die Programme, nicht jedoch die Dateien wieder her.)

Allerdings hat Twinsplay einige echte Probleme und Vorbehalte (und es ist auch keine Freeware, es kostet $ 40):

  1. Beim Wiederherstellen von Firefox scheint es, ALLE darin enthaltenen Tabs zu duplizieren. Es muss codiert werden, um zu vermerken, was Sie in Firefox geladen haben (als wäre jeder Tab eine "Datei", so wie es alle Ihre Wortdateien originalgetreu wiederherstellt) Habe Firefox bereits so eingestellt, dass die Tabs der vorherigen Sitzung geöffnet werden. Wenn 100 Tabs geöffnet sind, wird versucht, 200 Tabs zu laden, was im Allgemeinen eine Katastrophe darstellt. Außerdem werden die Registerkarten durcheinander gebracht !! (Zum Glück werden die doppelten Registerkarten immer noch in einer eigenen 'Gruppe' gespeichert, die nach der letzten der ursprünglichen Registerkarten beginnt, aber beide Registerkartengruppen haben eine durcheinandergebrachte Reihenfolge, sodass die Reihenfolge der ursprünglichen Registerkarten ebenfalls durcheinander gebracht wird.) Dasselbe Problem würde sicher auch in Chrome auftreten. Ich habe es nicht getestet (ich habe es nicht gewagt!).

  2. Das andere Problem: Für alle Programme, in denen möglicherweise mehrere Dateien geöffnet sind (z. B. Word, Photoshop, InDesign): Wenn aus irgendeinem Grund beim Laden der ersten Datei in das Programm ein Dialogfeld angezeigt wird (ein Makrofehler oder ähnliches in meinem In Design hatte ich im ersten Dokument einen fehlenden Bild-Link. Danach konnten alle Dokumente nach diesem ersten nicht geöffnet werden, da Twinsplay by Design alle Dateien auf einmal in ihre Programme lädt. Und Twinsplay zeigt in seiner Benutzeroberfläche nirgendwo eine Liste der Dateien aus der gespeicherten Sitzung an (auch nicht in den von mir überprüften Appdata-Protokollen / Konfigurationsdateien). In diesem Fall werden Sie wahrscheinlich die fünfte Datei in InDesign vergessen, die Sie haben Wir haben vor 4 Wochen daran gearbeitet und müssen noch fertig werden!

SO: Die Methode, die ich nach all dem mache, ist:

Ich gehe jede in der Taskleiste geöffnete Datei durch, kopiere ihren Dateipfad (was ziemlich einfach ist, wenn Sie sich in Windows-Dialogen und -Menüs und -Tastenkombinationen auskennen) und für jede Datei oder jedes Fenster, in dem ich mich gerade befand vor Ort oder hatten bestimmte Dinge hervorgehoben etc, ich notiere das nur nach unten, damit ich 10 Minuten später nicht vergesse. Hier ist ein Dummy-Beispiel für das, was ich meine.

Nach dem Neustart füge ich einfach den Pfad jeder Datei in die Windows Explorer-Adressleiste ein, um jede Datei einzeln mit dem zugehörigen Programm zu öffnen. Wenn ich eine Datei hätte, die nicht in dem dazugehörigen Programm geöffnet wäre (wie ein TIFF in Photoshop), würde ich das wohl notieren, damit ich mich erinnere.

-

JETZT. Meine Lösung ist nicht schlecht, aber es dauert noch einige Zeit, um den Dateipfad jeder geöffneten Datei zu kopieren.

Das Ideal wäre, ein Tool zu haben, das ALLE Windows-Dateipfade und -Programmpfade ("C: \ photoshop.exe" "C: \ image.TIFF") auf einmal ausspuckt, und dann können Sie diese Informationen in Stapelskripten speichern um jede Datei mit dem Programm zu öffnen, in dem sie sich befand, einzeln oder auf einmal im selben Stapel, wenn Sie möchten. Das wäre perfekt.

Gibt es eine Möglichkeit, die Dateipfade aller geöffneten Windows-Dateien zu kopieren? Ein kleines Tool zum Ausspucken der Dateipfade aller aktuellen Taskleistenelemente sollte ziemlich einfach sein! Wenn Twinsplay das kann, kann es natürlich irgendwie gemacht werden ... Ich habe diese Frage in einem separaten Beitrag hier gestellt . Könnte dieser Code es tun?

Da Microsoft uns keine elegante Ein-Klick-Lösung auf Betriebssystemebene zur Verfügung gestellt hat, sollten wir nicht versuchen, eine hibernate-artige Sitzungswiederherstellungsmethode ohne Zugriff von Drittanbietern durchzuführen oder z. B. Hacks zum Neuladen des Hibernate-Cache usw. zu basteln .

Ein Neustart von Windows ist eine Auffrischung, um den Arbeitsspeicher zu leeren und alles auszuspülen, ohne alles beizubehalten. Daher empfiehlt es sich, die Dateien manuell erneut zu öffnen (und dabei einige Details darüber zu notieren, wo Sie sich in bestimmten Dateien befanden) ), aber DAS so elegant wie möglich.

Gemeinschaft
quelle
Die Verwendung von Twinsplay ist wahrscheinlich die beste Option, die ich derzeit habe. Es wird für die meisten Benutzer funktionieren und scheint ein großartiges Werkzeug zu sein. Die eigentliche Lösung besteht darin, das Verhalten des Benutzers so zu ändern, dass diese Probleme nicht mehr auftreten.
Doltknuckle
um die 'bugs' im twinsplay zu beheben, wie ich vorhin schon sagte, wäre es meiner meinung nach die beste lösung, mit einem klick eine batch-datei / winzige exe zu erstellen, um die pfade aller offenen dateien und die programme, in denen sie sich befinden, zu kopieren Es kann so konfiguriert werden, dass nach dem Neustart fast nur noch ein Klick erforderlich ist, um die Daten wiederherzustellen. ärgerlich aber , dass ich zu haben scheinen meine gefragt Frage über sie in eine unklare Art und Weise so ein Mod die Frage geschlossen :(.
4
Ich werde hinzufügen: Windows hat etwas eingebaut, das verwendet wird, um neu zu starten, nachdem bestimmte Updates installiert und ein Neustart erzwungen wurde, und es wird viele / die meisten Fenster in ihren ursprünglichen Zustand zurückversetzen. Es gibt also einen Mechanismus auf Betriebssystemebene, der nicht sicher ist, was es ist oder wie zugänglich es für uns wäre.
Boomhauer
1
@boomhauer Für Anwendungsneustart registrieren stellt fest, dass Anwendungen, die "[Registrieren] für den Anwendungsneustart", die Anwendung automatisch neu starten, nachdem der Computer neu gestartet wurde ... aufgrund eines Softwareupdates. "
FriendlyGuy
6

Ich habe gehört, dass Leute ein Programm namens CacheMyWork verwenden . Die geöffneten Apps werden erneut geöffnet, die Dateien, an denen Sie arbeiten, werden jedoch nicht geöffnet (es sei denn, das Programm verfügt über eine solche Funktion).

Eine andere Möglichkeit besteht darin, das Problem zu umgehen, dass Sie Ihre Apps in einer virtuellen Maschine ausführen können. Wenn Sie dann nach Hause gehen und die virtuelle Maschine anhalten, bleibt der Status der virtuellen Maschine auf der Festplatte erhalten. Setzen Sie dann die virtuelle Maschine fort, wenn Sie zurückkehren. Dies umgeht das Problem, da Sie eines Tages das Betriebssystem der virtuellen Maschine aktualisieren / patchen müssen. Außerdem werden Sie wahrscheinlich einen Leistungseinbruch hinnehmen (wie groß das ist, was Sie tun).

Wenn es darum geht, Dinge offen zu lassen und Computer von Patches neu zu starten, bin ich genau richtig für Sie.

Scott McClenning
quelle
1
Der Software-Vorschlag ist ein Schritt in die richtige Richtung. Ich denke, das Problem ist, dass es nicht aktiv geöffnete Dateien überwacht, so dass es sie später nicht wiederherstellen kann. Im schlimmsten Fall muss ich möglicherweise ein Skript hacken, das erkennt, welche Dateien geöffnet sind, und diese dann für den ordnungsgemäßen Start einrichtet.
Doltknuckle
1
Ich stimme zu, ich wünschte, CacheMyWork überwacht die geöffneten Dokumente (wie Windows Recent Docuemtns) und würde die Dokumente beim Booten erneut ausführen. Genau wie ein Doppelklick auf ein Microsoft Word-Dokument Word auslöst, kann CacheMyWork einen langen Weg gehen, indem es beim Booten meiner Dokumente ausgeführt wird.
Scott McClenning
4

2016 und immer noch nichts von Microsoft ... Ich habe beschlossen, es auszuprobieren vbscript. Es ist nicht großartig, aber es startet alle Programme und in einigen Fällen sind es sogar Windows.

Das erste Skript speichert alle Prozesse in einer Textdatei im angegebenen Ordner (Desktop) und alle Fensternamen in einer separaten Datei. Das zweite Skript liest und startet alle Prozesse aus der Datei, die vom ersten Skript geschrieben wurde. Beide sollten mit der Erweiterung .vbs gespeichert werden. Zum Speichern von Fensternamen muss außerdem Microsoft Word installiert sein (nicht fragen ..).

On Error Resume Next
Dim session, folder, Word, Tasks

Set Word = CreateObject("Word.Application")
Set Tasks = Word.Tasks

' folder is the folder in which the files will be created. Can also be instantiated by hardcoding a path
folder = getPathOfFolder("Desktop")
' The second argument of the function call (session.txt) is the filename of the file containing all window names
Set sessionFile = CreateFileAt(folder, "session.txt")

for Each Task in Tasks
    if Task.Visible Then
        sessionFile.WriteLine(Task.Name)
    End if
Next
sessionFile.Close
Word.Quit

' The second argument of the function call (processes.txt) is the filename of the file containing all processes
Set processesFile = CreateFileAt(folder, "processes.txt")
set processesList = getAllProcesses()

for Each Process in processesList
    processesFile.WriteLine(Process.CommandLine & "")
Next

processesFile.Close
MsgBox("Done!")




Function getPathOfFolder(path)
    ' Dim objShell As Object
    ' Dim strPath As String

    Set objShell = Wscript.CreateObject("Wscript.Shell")
    Path = objShell.SpecialFolders(path)
    getPathOfFolder = Path & "\"
End Function

Function CreateFileAt(filePath, fileName)
    Dim fso, session
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set session = fso.CreateTextFile(filePath & fileName, true)
    Set CreateFileAt = session
End Function

Function getAllProcesses()
    Const Computer = "." 
    Dim WMI, ProcessList
    Set WMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & Computer & "\root\cimv2")
    Query = "Select * FROM Win32_Process"
    Set ProcessList = WMI.ExecQuery(Query)
    Set getAllProcesses = ProcessList
End Function

.

On Error Resume Next
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile(getPathOfFolder("Desktop") & "processes.txt", 1)

Do While file.AtEndOfStream = False
    Set Shell = CreateObject("Wscript.Shell")
    Shell.Run(file.ReadLine)
Loop

MsgBox("Done!")

Function getPathOfFolder(path)
    ' Dim objShell As Object
    ' Dim strPath As String

    Set objShell = Wscript.CreateObject("Wscript.Shell")
    Path = objShell.SpecialFolders(path)
    getPathOfFolder = Path & "\"
End Function

Ich habe noch keine Möglichkeit gefunden, die Dateipfade bei jedem Neustart von user78017 programmgesteuert abzurufen. Ich würde gerne erfahren, für welche Programme dieses Skript alle geöffneten Dateien sichert und für welche Programme es nicht öffnet. Wenn jemand Lust hat, diesen Code zu löschen, kann er den Beitrag bearbeiten.

Fr4nc3sc0NL
quelle
1

Habe diesen heute im RSS-Feed:

CacheMyWork ist ein praktisches Dienstprogramm, mit dem Sie Windows neu starten können, ohne Ihren Platz in Ihrer Arbeit zu verlieren. Es erstellt eine Checkliste der aktuell geöffneten Anwendungen und startet die von Ihnen ausgewählten Anwendungen neu, wenn Sie sich das nächste Mal am Computer anmelden.

Quelle

Steiv
quelle
+1 Ha, das ist süß ... sehr nette Entdeckung (aber es wurde bereits von Scott gepostet).
0

Ich habe das gleiche Problem. Nach einem Neustart müssen alle Prozesse, die ich normalerweise verwende, mindestens eine halbe Stunde neu gestartet werden.
Ich habe ein Dienstprogramm gefunden, das die Möglichkeit bietet, in den Pre-Boot-Status zurückzukehren: Slimbrowser . Ich würde lieber mehr lieben.

Dave
quelle
1
Ich habe Möglichkeiten gefunden, Browsersitzungen (Firefox verwenden) und Ordnersitzungen (Windows-Einstellungen) zu speichern und beim Start neu zu starten. Die anderen Dinge wie Office (Word, Excel, Outlook), Editor und Adobe Reader habe ich noch keine gute Lösung gefunden.
Doltknuckle
Für einen Editor bietet Ultra-Edit diese Funktion. Ich persönlich bevorzuge kedit wegen seiner Skriptfähigkeiten.
Dave
-1

Nicht genau das, wonach Sie gefragt haben, aber Sie könnten Ihren Computer einfach über Nacht in den "Suspend" -Modus versetzen. Sofern keine Prozesse ausgeführt werden, ändert dies nichts an der Funktionsweise. Es dauert nur ein oder zwei Sekunden, bis die Suspendierung am Morgen abgeschlossen ist, und Windows Update kann während der Suspendierung nicht ausgeführt werden.

Und es ist kostenlos.

CarlF
quelle
Gute Idee, löst aber nicht das Problem, wenn das OP ein Windows-Update durchführen muss.
ChrisF
1
Ich habe darüber nachgedacht, Suspendierung und Winterschlaf tun wirklich nichts für mich. Es ist nicht so, dass ich Energie sparen möchte, sondern dass ich nach einem harten Neustart wieder zu meiner vorherigen Arbeitsumgebung zurückkehren möchte.
Doltknuckle
Mein Gedanke war, wenn Sie dort wären, könnten Sie sich einfach weigern, neu zu starten, bis es Ihnen recht ist.
CarlF
Was Doltknuckle fragt, ist "Wie stelle ich die Dinge wieder her, an denen ich nach einem Neustart gearbeitet habe?" Die Frage, die immer wieder beantwortet wird, lautet jedoch: "Wie verhindere ich, dass mein Computer automatisch neu gestartet wird?" Letzteres ist eine gute Frage, aber für die tatsächlich gestellte Frage völlig irrelevant .
Martha