I’ve been asked a few times recently as to whether there is any way to display thumbnails of archived images. The short answer is no there is not. Windows deliberately does not display the thumbnail for offline (archived) files. This could cause a mass recall of archived files each time you browse a folder in Windows/File Explorer. This is something you do not want, particularly if the archived files are on slow media such as tape. So Windows leaves you with a generic image thumbnail for archived files.
If you have hundreds or thousands of images in a folder, then it makes it very difficult to work out which image you want if they have been archived. While there is no direct fix for this, I have come up with a workaround which you may be able to use in certain situations.
The premise of the workaround is to create a separate thumbnail file which does not get archived. So when browsing a folder you would see the thumbnail and the archived file, something like this:
Once you’ve found the image you want through the thumbnail, you then open up the archived file associated with it. It will mean you double up the number of image files and those files will take up additional space, but in my testing with this procedure, the thumbnails were taking up 5-7KB of space. The space saved by archiving will more than outweigh the overhead of having the thumbnails.
I generated the thumbnails using Easy Thumbnails from Fookes Software (disclaimer: I am not associated with Fookes and any use of their software is undertaken at your own risk). Thumbnails can be generated through their UI, or conveniently for this procedure they can create them from a command line.
You could create the thumbnails once, but then what about new images that get created? I’ve created a PowerShell script which you can schedule to run on a regular basis, such as weekly:
#----- define parameters -----# #----- get current date ----# $Now = Get-Date #----- define amount of days to look back ----# $Days = "7" #----- define folder where files are located ----# $TargetFolder = "C:\Temp\Photos" #----- define extensions to create thumbnails for ----# $Extension = @("*.gif", "*.jpg") #----- define LastWriteTime parameter based on $Days ---# $LastWrite = $Now.AddDays(-$Days) #----- get files based on last write filter and specified folder ---# $Files = Get-Childitem $TargetFolder -Include $Extension -Recurse | Where {$_.LastWriteTime -gt "$LastWrite"} #----- for each image file which has been modified in the last $Days #----- and which does not contain "_tn" in the file name #----- create a thumbnail foreach ($File in $Files) { if ($File -notmatch "_tn") { write-host "Creating Thumbnail $File" -ForegroundColor "DarkRed" & "C:\Program Files (x86)\Easy Thumbnails\EzThumbs.exe" $File /P="_tn" /W=200 /H=200 /Q=50 } }
This PowerShell script can be run from the command line with:
powershell & ‘c:\scripts\create_thumbnails.ps1’
As it stands, this script will create thumbnails for gif and jpg image files that have been modified within the last 7 days. You can change the parameters to specify:
- The time period to look back for new or modified image files
- The folder to target
- The extensions of the images to target (this list can be extended beyond two)
Easy Thumbnails does not pay any attention to the Offline attribute on archived files. So if you did not specify a date parameter it would create a thumbnail for all files in a folder tree including those that are archived. If you already have archived files you may want to do this as a one off during a quiet period. I would recommend using pass-through recall if you want to do this as the creation of the thumbnail will not cause a recall back to disk. You will need to ensure that the account you run this as does not have the mass recall restrictions applied to it. Going forward, ensure the date parameters in the script are set so that thumbnails will only be created for recently created or modified files.
The last part of this is to insure that the thumbnails do not get archived. The thumbnails created with the script will be named <filename>_tn.<gif or jpg>. The common part being ‘_tn’ in the file name. A ‘do not archive’ rule can be create to exclude ‘*_tn.*’ files from archiving:
Ensure this ‘do not archive’ rule is placed ahead of your ‘archive’ rule in the rules list:
While this workaround is not perfect and is not suitable for all scenarios; where you have image libraries that are archived, I’m hoping you can make good use of this. I would be interested in your feedback as to whether you have found this useful and whether you have been able to implement it at all. A similar procedure could also be used for video files using video thumbnail generation software.
Terms of use for this information are found in Legal Notices
The Veritas Insights blog brings the latest news and views about how to gain visibility into your data, storage, and backup infrastructure to take control of data associated risks.