
Von Zeit zu Zeit benutze ich Notepad statt Notepad++ oder einem besseren Editor. Manchmal lege ich sogar wichtige Dinge in diese Notepad-Fenster.
Wenn ich meinen PC neu starten muss, habe ich oft bis zu 20 geöffnete Notizblock-Instanzen. Zugegeben, die meisten davon sind nutzlos, aber ich muss jede einzelne durchsehen, um zu sehen, ob es etwas gibt, das es wert ist, gespeichert zu werden.
Gibt es ein Dienstprogramm oder einen Befehl, der Folgendes ausführen kann:
- Alle geöffneten Notizblöcke in einer einzigen Datei speichern
- Alle geöffneten Notizblöcke in den standardmäßig benannten Dateien speichern
- Speichern Sie die Instanzen von Notepad im Speicher auf der Festplatte, damit sie beim Neustart gestartet werden
Antwort1
Ja da istAutoHotKeyWerkzeug, das für eine solche Aufgabe geeignet ist.
Sie können ein Makro erstellen, das wiederholt
- fokussiert jedes Fenster mit einem Wort
Notepad
im Titel (oder beendet das Fenster, wenn kein solches Fenster gefunden wird) - sendet Ctrl+ Szum Speichern einer Datei
- wartet einige Sekunden
- Wenn es (wiederum über den Titel) feststellt, dass der Dialog "Speichern unter" geöffnet ist (also beim Speichern einer neuen Datei), füllt es einen standardmäßigen nummerierten Dateinamen aus (durch Senden von Tastenanschlägen) und sendet Alt+ Szum DrückenSpeichernSchaltfläche im Dialog
- fügt Befehl
notepad <filename>
inrestore-notepads.bat
Datei ein - sendet Alt+, F4um die Notepad-Instanz zu schließen
- wiederholen.
dann können Sie restore-notepads.bat
in IhreStart-upMenü und Sie werden die von Ihnen beschriebene Funktion „3. Speichern Sie die Instanzen des Editors im Speicher auf der Festplatte, damit sie beim Neustart gestartet werden“ vorfinden.
Antwort2
Ich habe Notepad als temporären Textspeicher verwendet, da kein anderes Programm schneller startet. Um den Inhalt von Notepad-Instanzen zu speichern oder zu sichern, habe ich etwas AHK-Code geschrieben. Er basiert im Wesentlichen auf Miroxlavs Antwort, aber ich muss ihn nicht wiederherstellen.
Hier kommt also der Code.
+!s:: ;Save all notepad instance
ClipSaved := ClipboardAll
LastClip := ""
WinGet, id, list, *Untitled - Notepad, ,, ;[1]
Loop, %id%
{
this_id := id%A_Index%
WinActivate, ahk_id %this_id%
Send ^A
Send ^C
Sleep 500
WinMinimize, ahk_id %this_id%
WinGetClass, this_class, ahk_id %this_id%
WinGetTitle, this_title, ahk_id %this_id%
LastClip = %LastClip% `r`n-------`r`n %ClipBoard% ;[2]
ToolTip , Saving All Untitled Notepad Instances `n%a_index% of %id%`nahk_id %this_id%`nahk_class %this_class%`n%this_title%`n
}
ClipBoard := LastClip
; ToolTip , %ClipBoard%
Run notepad.exe
Sleep 1000
Send ^V
Sleep 1000
Clipboard := ClipSaved
ClipSaved =
#Persistent
ToolTip, Done
SetTimer, RemoveToolTip, 2500
return
RemoveToolTip:
SetTimer, RemoveToolTip, Off
ToolTip
return
return
Speichern Sie den Code in einer .ahk
Datei, führen Sie ihn aus und nach dem Drücken von Alt+Shift+S
sollte der gesamte Inhalt der unbenannten Notizblockinstanz in einem neuen Notizblockfenster zusammengeführt werden.
Notiz:
- [1] Wenn Sie möchten, dass alle Notizblockinstanzen gespeichert werden, nicht nur die unbenannte, ändern Sie das
*Untitled - Notepad
inahk_exe notepad.exe
. - [2] Das ist für eine separate Zeile.
Obwohl diese Antwort 5 Jahre später kommt, hoffe ich trotzdem, dass sie Ihnen weiterhilft.