Restauration du logiciel ouvert après un événement de redémarrage dans Windows


36

Je trouve qu'à la fin d'une longue journée, j'ai parfois un grand nombre de programmes en cours d'exécution. Tout ce que je devrai utiliser demain. Normalement, ce n'est pas un problème, je peux simplement verrouiller la machine et revenir demain. Mon problème survient lorsque la mise à jour de Windows démarre au milieu de la nuit et force le redémarrage de mon ordinateur. Cela ferme à tour de rôle tous mes logiciels ouverts. Bien sûr, je sauvegarde tout régulièrement afin de ne rien perdre, mais je perds du temps à rouvrir toutes ces ressources à chaque redémarrage.

[MODIFIER]

Je devrais préciser que je veux toujours pouvoir redémarrer mon ordinateur lorsqu'une mise à jour est disponible. Empêcher le redémarrage ne fait que retarder le problème. J'aurais dû être plus spécifique dans le sens où je veux pouvoir récupérer mon environnement de travail après un redémarrage pour une raison quelconque. Des tâches telles que la maintenance planifiée, les coupures de courant, les mises à jour et les installations logicielles.

[MODIFIER]

Je ne peux pas simplement les configurer au démarrage car les fichiers changent de semaine en semaine. J'ai donc besoin de quelque chose qui surveille ce que j'ai ouvert et me donne la possibilité de "récupérer" ces sessions de logiciel lorsque je me reconnecte.

Quelqu'un a des suggestions sur ce que je peux faire? Je serais même prêt à acheter un logiciel pour le faire pour moi si c'était la seule option.

Merci


En fait, je me souviens avoir lu quelque part, que Win7 était supposé avoir une fonctionnalité similaire à celle-ci, bien que je suppose qu'ils étaient incapables de la préparer à temps pour la sortie. Cela pourrait donc arriver dans le futur.
eidylon

1
La commande "shutdown / g" semble pouvoir être couplée à la fonction de récupération automatique après incident du programme pour effectuer 75% des tâches que je recherche. Je vais devoir faire plus de tests pour voir si cela fonctionne.
Doltknuckle

1
la commande d'arrêt ne fonctionne pas vraiment comme prévu ... ce dont j'ai vraiment besoin, c'est d'un moyen de surveiller les fichiers actuellement ouverts. Ensuite, je peux simplement créer un script dynamique pour relancer ces fichiers.
Doltknuckle

1
6 ans plus tard et ce n’est toujours pas une fonctionnalité de Windows ... OSX l’a depuis des années!
GiH

7 ans et
ça

Réponses:


16

C'est tellement énervant qu'il n'y a toujours pas de solution élégante à ce problème!

Cela nous arrive à tous: Windows ralentit à l’arrêt (une sorte de fuite de mémoire est à l’origine de cette situation, car vous avez généralement 132 onglets ouverts chromés, 57 ouverts sous Firefox, 24 fenêtres ouvertes au total, ce qui rend complexe une opération les impliquant tous en même temps que vous faites un travail en plus d’un travail à l’autre ... genre de gars), et cela devient si lent que vous commencez vraiment à perdre du temps à attendre que des choses se passent sur votre ordinateur ... vous devez donc tout simplement réinitialiser votre session qui s’est lentement accumulée au cours des 5 dernières semaines, pour enfin succomber au cauchemar qui consiste à recréer votre fouillis complexe de fenêtres et de fichiers ouverts et de dossiers d’explorateur, après les fenêtres redoutables. redémarrer.

BIEN.

J'ai passé beaucoup de temps à chercher des solutions élégantes qui n'en font pas un cauchemar. Telle est ma conclusion et ma «solution» actuelle.

Je n’ai trouvé qu’un seul programme capable de sauvegarder et de restaurer à la fois les programmes ET les fichiers qu’ils avaient ouverts - et c’est vraiment très fluide. C'est Twinsplay (Professional Edition) . ( CacheMyWork et SmartClose ne restaurent que les programmes, mais pas les fichiers.)

Cependant, Twinsplay a quelques problèmes et mises en garde réels (et ce n’est pas un logiciel gratuit qui coûte 40 $):

  1. Lors de la restauration de firefox, il semble dupliquer TOUS les onglets à l'intérieur. Il doit être codé pour noter ce que vous aviez chargé dans firefox (comme si chaque onglet était un "fichier" similaire à la manière dont il restaurera fidèlement tous vos fichiers Word). déjà Firefox configuré pour ouvrir les onglets de la session précédente et avec 100 onglets ouverts, il va essayer de charger 200 onglets et sera généralement un désastre. De plus, ça déconne les onglets !! (heureusement, il conserve toujours au moins les onglets dupliqués dans son propre "groupe" commençant après le dernier des onglets d'origine, mais l'ordre des deux groupes d'ordres est modifié, donc oui, il perturbe l'ordre de vos onglets d'origine également). Je suis sûr que le même problème se produirait sous Chrome ..... Je ne l'ai pas testé (je n'ai pas osé!).

  2. L’autre problème: pour tous les programmes pour lesquels vous avez souvent plusieurs fichiers ouverts (tels que Word, Photoshop, InDesign): si, pour une raison quelconque, une boîte de dialogue s’affiche pendant le chargement du premier fichier dans le programme (une erreur de macro ou similaire à mon fichier InDesign, il me manquait un lien d’image dans le premier document), puis l’ouverture de tous les documents après le premier échouait car Twinsplay de par sa conception chargeait tous les fichiers en même temps dans leurs programmes. Et Twinsplay n’affiche nulle part dans son interface utilisateur la liste des fichiers de la session enregistrée (ni dans les fichiers journaux / config d’Appdata, j’ai vérifié), donc si ce scénario se produit, vous oublierez probablement ce cinquième fichier dans InDesign. travaillaient il y a 4 semaines et il reste encore à finir!

SO: la méthode que je fais après tout cela est la suivante:

Je passe en revue chaque fichier ouvert dans la barre des tâches, copie son chemin d'accès (ce qui est assez facile à faire assez rapidement si vous connaissez bien les dialogues, menus et raccourcis clavier de Windows), et pour tout fichier ou fenêtre dans lequel je me trouvais. repérer ou faire mettre certaines choses en surbrillance, etc., je note simplement que vers le bas, je n’oublie pas 10 minutes plus tard. Voici un exemple factice de ce que je veux dire.

Ensuite, après avoir redémarré l'ordinateur, il suffit de coller le chemin d'accès de chaque fichier dans la barre d'adresses de l'explorateur Windows pour ouvrir chaque fichier un par un, avec son programme associé. Si j'avais un fichier qui n'était pas réellement ouvert dans son programme associé (comme un fichier TIFF dans Photoshop), je suppose que je le noterais pour que je m'en souvienne.

-

À PRÉSENT. Ma solution n’est pas trop mauvaise, mais il faut encore un certain temps pour copier le chemin de fichier de chaque fichier ouvert.

L'idéal serait d'avoir un outil qui crache tous les chemins de fichiers et chemins de programmes de Windows ("C: \ photoshop.exe" "C: \ image.TIFF") à la fois et vous pouvez ensuite mettre ces informations dans des scripts batch. d'ouvrir chaque fichier avec le programme dans lequel il se trouvait, un par un, ou tous en même temps dans le même lot si vous le souhaitez. Cela serait parfait.

Pour accélérer les choses, existe-t-il un moyen de copier les chemins de fichiers de TOUS les fichiers ouverts de Windows actifs? Un petit outil pour déterminer les chemins de fichiers de tous les éléments actuels de la barre des tâches devrait être assez simple! Si Twinsplay peut le faire, évidemment, cela peut être fait d'une manière ou d'une autre ..... J'ai posé cette question sur un message séparé, ici . Ce code pourrait -il le faire?

Etant donné que Microsoft ne nous a pas fourni de solution élégante en un clic au niveau du système d'exploitation, nous ne devrions pas essayer une méthode de restauration de session de type Saint Graal semblable à un hibernation avec un simple accès à une tierce partie ou par exemple un bidouillage avec le rechargement de cache en hibernation, etc.

Le redémarrage de Windows est censé être une mise à jour pour effacer la mémoire vive et tout effacer, sans conserver tout le contenu, il est donc préférable de rouvrir manuellement vos fichiers (tout en notant quelques détails de l'emplacement de certains fichiers ), mais CECI le plus élégamment possible.


Utiliser Twinsplay est probablement la meilleure option que j'ai à ce stade. Cela fonctionnera pour la plupart des utilisateurs et semble être un excellent outil. La vraie solution à cela est de changer le comportement de l'utilisateur pour qu'il cesse d'avoir ces problèmes.
Doltknuckle

pour résoudre les "bugs" dans twinsplay, comme je l'ai déjà dit, la meilleure solution de loin serait d'avoir un fichier batch en un clic / un petit exe pour copier tous les chemins d'accès des fichiers ouverts et les programmes dans lesquels ils se trouvent, peut configurer les choses pour qu’elles ne soient presque plus qu’un seul clic supplémentaire à restaurer après le redémarrage. ennuyeux cependant que je semble avoir posé ma question à ce sujet d'une manière peu claire alors un mod a fermé la question :(.

4
J'ajouterai: Windows intègre quelque chose dans lequel il utilise pour redémarrer après l'installation de certaines mises à jour et un redémarrage forcé, et restaure la plupart / la plupart des fenêtres à leur état d'origine. Il existe donc un mécanisme au niveau du système d’exploitation, qui ne sait pas de quoi il s’agit, ni de la manière dont il serait accessible.
boomhauer

1
@boomhauer Enregistrement pour le redémarrage de l'application indique que les applications selon lesquelles "[Enregistrer] pour le redémarrage de l'application entraîne également le redémarrage automatique de l'application par Windows après le redémarrage de l'ordinateur ... en raison d'une mise à jour logicielle."
FriendlyGuy

6

J'ai entendu des gens utiliser un programme appelé CacheMyWork . Il rouvrira les applications que vous avez ouvertes, mais n'ouvrira pas les fichiers sur lesquels vous travaillez (sauf si le programme dispose d'une telle fonctionnalité).

Une autre option consiste à éviter le problème en exécutant vos applications sur une machine virtuelle. Ensuite, lorsque vous rentrez chez vous, vous pouvez mettre en pause la machine virtuelle et conserver son état sur disque. Puis reprenez la machine virtuelle à votre retour. Cela élimine le problème, car il vous faudra un jour mettre à jour / corriger le système d'exploitation de la machine virtuelle. En outre, vous aurez probablement un impact sur les performances (leur taille dépend de ce que vous faites).

Quand il s'agit de laisser les choses ouvertes et de redémarrer les machines à partir de correctifs, je suis à vos côtés.


1
La suggestion de logiciel est un pas dans la bonne direction. Je pense que le problème est qu'il ne surveille pas activement les fichiers ouverts, il ne peut donc pas les restaurer plus tard. Dans le pire des cas, je devrais peut-être pirater un script qui détecte les fichiers ouverts, puis les configure pour qu'ils soient lancés dans l'ordre.
Doltknuckle le

1
Je suis d’accord, je souhaite que CacheMyWork surveille les documents ouverts (comme Windows Recent Docuemtns) et les réexécute au démarrage. Tout comme un double-clic sur un document Microsoft Word déclenchera Word, CacheMyWork pourrait aller très loin en exécutant mes documents au démarrage.
Scott McClenning

4

2016 et toujours rien de Microsoft ... J'ai décidé de l'essayer vbscript. Ce n'est pas génial, mais tous les programmes sont sauvegardés, voire Windows.

Le premier script enregistre tous les processus dans un fichier texte du dossier spécifié (poste de travail) et tous les noms de fenêtres dans un fichier séparé. Le second script lit et lance tous les processus du fichier écrit par le premier script. Les deux doivent être enregistrés avec l'extension .vbs. En outre, l'enregistrement des noms de fenêtre nécessite l'installation de Microsoft Word (Don't ask ..).

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

Je n'ai pas encore trouvé le moyen d'obtenir par programme les chemins de fichiers que l'utilisateur78017 copie à chaque redémarrage. Je voudrais savoir pour quels programmes ce script ouvre tous les fichiers ouverts et pour quels programmes il ne le fait pas. Si quelqu'un a envie de nettoyer ce code, n'hésitez pas à éditer le message.


1

A obtenu celui-ci sur le flux RSS aujourd'hui:

CacheMyWork est un utilitaire pratique qui vous permet de redémarrer Windows sans perdre votre place dans votre travail. Il crée une liste de contrôle des applications actuellement ouvertes et redémarre les applications que vous avez sélectionnées lors de votre prochaine connexion à l'ordinateur.

La source


+1 Ha, c'est mignon ... très belle découverte (mais cela avait déjà été posté par Scott).

0

J'ai le même problème. Après un redémarrage, j'ai au moins une demi-heure de redémarrage de tous les processus que j'utilise normalement.
J'ai trouvé un utilitaire capable de revenir à l'état de pré-démarrage, Slimbrowser . J'aimerais beaucoup aimer davantage.


1
J'ai trouvé des moyens de sauvegarder les sessions de navigateur (utiliser Firefox) et de dossier (configuration de Windows) et de les relancer au démarrage. Les autres choses comme Office (Word, Excel, Outlook), le bloc-notes et Adobe Reader ne sont pas encore disponibles.
Doltknuckle

Pour un éditeur, ultra-edit a cette capacité. Personnellement, je préfère kedit en raison de ses capacités de script.
Dave

-1

Ce n’est pas exactement ce que vous avez demandé, mais vous pouvez simplement mettre votre ordinateur en mode "suspension" du jour au lendemain. À moins que des processus ne soient réellement en cours d'exécution, cela ne changera rien à son fonctionnement, il ne vous faudra qu'une seconde ou deux pour vous suspendre le matin et Windows Update ne peut pas s'exécuter pendant la suspension.

Et c'est gratuit.


Bonne idée, mais ne résout pas le problème lorsque le PO doit faire une mise à jour de Windows.
ChrisF

1
J'y ai pensé, suspension et hibernation ne font vraiment rien pour moi. Ce n'est pas que je veuille économiser de l'énergie, mais surtout que je veuille revenir à mon environnement de travail précédent après un redémarrage forcé.
Doltknuckle

Je pensais que si vous y étiez, vous pourriez simplement refuser de redémarrer tant que de besoin.
CarlF

Doltknuckle demande "Comment restaurer les éléments sur lesquels je travaillais après un redémarrage?" La question que les gens continuent à répondre, cependant, est "Comment puis-je empêcher mon ordinateur de redémarrer automatiquement?" La dernière question est une bonne question, mais elle n’a absolument aucun rapport avec la question qui a été posée.
Martha
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.