Windows – change the way Windows 10 gives names to screenshot

filenamesprint-screenscreenshotwindowswindows 10

Is it possible, by a registry hack or other method, to change the way Windows 10 names my screenshot taken and saved with Windows + Print Screen?

Currently my screenshots in C:\Users\[Username]\Pictures\Screenshots are named Screenshot.png, Screenshot (1).png, Screenshot (2).png and so on.

I would like them to be named yyyy-mm-dd_hh.mm.ss.png or similar, just like Minecraft (yes, Minecraft 🙂 ) screenshots. For example: 2016-07-21_12.28.05.png.

I find this naming scheme much better, since it allows me to delete screenshots without messing up the file names. It also gives a clear overview of when a screenshot was taken.

< EDIT >
I fiddled around with the solution dezlov suggested. It took quite a while for me before I finally got it working. It's not the ideal solution I was hoping for, though, but at least it does the job. I now have a batch file in my screenshots folder, that I can run manually when I open the folder. A scheduled task would not be able to have the screenshots renamed when I want them to be (preferably before I even open the screenshots folder), unfortunately.
I played around with making so that a new file in the screenshots folder acts like a trigger for that task you suggested, but that didn't seem possible. Neither can I make Windows + Print Screen a shortcut key for a shortcut file to the .bat file. (Confusing, I know, but I need a shortcut to the .bat file to be able to assign a keyboard combination that triggers that shortcut.) The only possible options I seem to have is CTRL + ALT + [x]. No shift, no Print Screen key, nothing else. Any suggestions for how to make Windows + Print Screen run the .bat file?
< / EDIT >

Best Answer

The idea is to setup a batch renaming program to automatically rename all those screenshots to your desired pattern using the last modified file time. This can be setup so that it can be ran either on demand, or periodically via scheduled tasks.

This can be accomplished with ReNamer.

  1. Open ReNamer
  2. Add an Insert renaming rule with the following configuration:
    • Insert ":File_DateModified:" replacing current name (skip extension)
  3. Open Settings in the main menu, Meta Tags tab, change the date format to:
    • yyyy-mm-dd_hh.nn.ss.zzz
  4. Save the current rules configuration as a Preset
    • Click Ctrl+S or by navigating through the main menu.

Now, you can use your saved preset to automatically rename files by using a command line:

"C:\Programs\ReNamer\ReNamer.exe" /rename "My Preset Name" "C:\Users\Username\Screenshots"

(Exact paths and preset name will need to be adjusted to fit your setup)

This command opens ReNamer with the selected preset, loads all files from the specified folder, renames all files and closes automatically if no issues have occurred. You can either create a shortcut for executing it on demand or adding it as a Scheduled Task to be executed periodically.

That is how it looks if you just load your files into ReNamer for inspection:

ReNamer - serializing file names with last modified date

Related Question