TouchPro FAQs

Show all answers
Hide all answers
  1. Installation produces a spyware warning. What should I do?

    See this item in the general FAQ page.

  2. TouchPro doesn't appear to change the timestamp, but it doesn't report an error either!

    In the registered version of TouchPro you have the flexibility to touch files, folders, both, or neither. Similarly, you have the flexibility to change the time, date, time and date, or neither, so check that you have got the appropriate options selected.

    If you're sure you are using TouchPro correctly, and it sometimes works and sometimes doesn't, you may be running into issues caused by 3'rd party products. Anti-virus protection products are common sources of unexplained issues, so if you have an anti-virus product installed, try disabling it.

  3. When I set the timestamp to a date before 1980, the value is not displayed in Explorer's details view.

    This is a design limitation of Explorer due to the use of the DOS timestamp format used to represent items in Explorer. The issue is known to Microsoft but isn't widely acknowledged (there's no public Knowledge Base article on it as far as I know). The property page displays the correct timestamp.

  4. When I try to change the timestamp on a WAV, AVI, MP3, or other multi-media file type, TouchPro reports that the file is in use by another process.

    This frequently occurs if you have Explorer set to display its Web view - where it displays a preview of the file in a window pane to the left of the list of files. If you disable this facility in Explorer (via Folder Options) you should then be able to change the timestamp. Note that this isn't only an issue with TouchPro, you're also unable to delete the file when this situation arises.

    If disabling the web view doesn't resolve this problem you might want to try using the excellent SysInternals utilities "Process Explorer" and "FileMon" to help determine which process is accessing the file and preventing TouchPro from operating.

  5. Why, and how does TouchPro affect the size of picture files when I change their times?

    To cater for a wide variety of different image formats TouchPro uses the Microsoft GDI+ programming interface to manipulate the properties of image files. As a consequence the file contents are recreated with default compression. Depending on the compression ratio of the original file the resultant file can be quite different. For example:

    File Original Touched
    JPG 132,898 132,270
    JPG 172,807 172,331
    JPG 382,740 382,222
    JPG 888,868 888,053
    JPG 1,660,109 1,659,254
    RAW 23,302,548 12,752,796

    We recommend that you always keep a copy of your original pictures before altering the timestamp with TouchPro so that should your find the result unacceptable you can always revert back to the original.

    In the tests we performed we could see no noticeable difference in image quality after using TouchPro on the image files.

  6. How do I remove the bitmap from the context menu?

    If you'd prefer not to have the bitmap displayed on the Explorer context menu, add the following registry setting:

    HKEY_CURRENT_USER\Software\JD Design\TouchPro

    Create a DWORD value named "Options" and set the value to 0 to disable the bitmap.

  7. Sometimes operations are much slower than they ought to be.

    If you perform operations on directories containing lots of files, you may find that TouchPro performs dramatically better with any Antivirus real-time protection facility disabled.

    You may be able to identify if this is the situation by using Task Manager while the operation is progressing. On the Processes tab, sort by CPU. If Explorer isn't the most active process, you may find your AV process is, this is a good indicator that the issue is due to the Antivirus product. Try disabling the AV real-time protection and see if the operation speeds up noticeably.

A Brief Explanation of Timestamps

Under the 32-bit Windows operating systems (Windows 9x, NT, Windows 2000, XP, etc.), each file and directory has 3 time values associated with it:

Created The time the file or directory was created.
Modified The time the contents of the file or directory were last changed.
Accessed The time the file or directory was last accessed (read or write).

Note that I use the term directory rather than folder, since Microsoft use folder to encompasses virtual containers not necessarily held in the disk file store as a directory. Also, I use time to mean time and date.

Created - this is set whenever you create a new file or directory. For example, when you use an application's File, Save command when you've created a new document, or when you use the File, Save As... command to save a copy of a file in a different directory, or with a different file name.

One slightly contentious aspect of this value is what happens when you copy a file.

Here, the rule is that the copy is a new file. Therefore its created time is set to the current time. Consequently you arrive at the situation where a file appears to have been modified before it was created - which initially seems illogical. However, it's just a matter of correctly interpreting the rules.

You can copy a file by many means, including the command line copy command, Explorer copy and paste, or drag and drop operations that result in a new file being created.

Note that moving or renaming files (using the move or rename command line commands, or Explorer drag and drop operations) does not create a new file or directory, so the created time moves with the file and remains unchanged.

Modified - this is changed by any operation that writes data to a file or directory. This is perhaps the most obvious timestamp value as it records when a file's contents were last changed. In the case of a directory, this changes if files are added to or deleted from a directory.

Some move/rename operations do cause the Modified time value to change, while others don't. Specifically, operations with Explorer appear to change the Modified time, while the command line operations don't

Last Accessed - logically this should be changed by any operation that opens and reads from a file. This does seem to be the situation for Win9x operating systems (but the resolution of the timestamp is only 1 day). However, for Windows NT based operating systems such as Windows XP, using NTFS format drives, the situation is somewhat ambiguous and as far as I've been able to determine - it's undefined (as are all the timestamp operations). Microsoft documentation states that the resolution is 1 hour, but it appears to be implemented such that the timestamp doesn't change within 1 hour of the last change - so for accesses outside that period, the timestamp does reflect the actual time.

For a directory this changes when you change the contents of a directory - for instance, when you add or delete files, but it may also change when a file in a directory is read - another ambiguous aspect!

More often than not, the Last Accessed timestamp will be the same as the Modified timestamp.

The following table summarises the findings for file timestamps:

  Created Modified Last Accessed
  Fat NTFS FAT NTFS FAT NTFS
Resolution 2s 1s 2s 1s 1 day 1s
Changed when c c c, w c, w c, w, r c, w, r
  c = created, w = written, r = read

 

The following table summarises the findings for directory timestamps:

  Created Modified Last Accessed
  Fat NTFS FAT NTFS FAT NTFS
Resolution 2s 1s 2s 1s 1 day 1s
Changed when c c a, d a, d a, d, r a, d, r
  a = File Added, d = File Deleted, r = File Read

Earliest Dates

FAT file systems cannot have files dated before 1 January 1980. TouchPro does not prevent you from entering dates prior to this because they are allowed in other file systems such as NTFS. Currently, Explorer does not display file dates prior to 1980 in its details view, although it correctly displays them on the General page of a file's Property Pages.

If you try to set the time & date to a value before 1 January 1980 for a FAT or FAT32 drive, TouchPro correctly reports the operation failed.

NTFS accommodates dates back to 1601, but the Windows control that TouchPro uses to enter the date appears to be limited to 14 September 1752, which is the date that the British and its colonies adopted the Gregorian calendar.

Beware the "Date" column in Windows File Explorer

In "Details" view mode, Explorer usually shows the file/folder "Name" column, and the "Date Modified" column, along with other items of information. However, the columns are customisable and one of the options is to show something named just "Date".

This "Date" can be misleading because it's not a single piece of information, and may be different for different types of file, in particular for media files such as image, video, and music. These types of file often contain timestamp properties for various things in the file metadata information.

For example, a video file may contain a “Media created” (System.Media.DateEncoded) property, and if this is present Windows presents that for the "Date" column. However, if it's not present, Windows uses the file system "created" date instead. There's no way to know what Explorer is showing for this property other than to examine the file's details property page and see which timestamp property corresponds to what you see for the "Date" column.

Tips:

Checking timestamps using Explorer can be problematic since many applications integrate into Explorer (like our own TouchPro) to provide specific facilities for their data files. These applications may access the files you're hoping to view the timestamps of, and so affect the results. These sorts of facilities usually only affect the last accessed time, so if that value is important you should use the DIR command line tool, or our free filetms utility for a less intrusive means of viewing the timestamps.

Windows NT operating systems using NTFS or ReFS format drives support a facility to prevent the Last Accessed time from constant update. From Windows Vista (and Windows Server Server 2008), this setting is on by default. Earlier operating systems defaulted to it off:

System\CurrentControlSet\Control\FileSystem
NtfsDisableLastAccessUpdate

Notes:

The timestamp values available for networked drives depends on the particular network.

Nothing guarantees a file's timestamp reflects the real time of any operation - since the timestamps are easily modified by application software and utilities such as TouchPro. Additionally, users can change the system time to confound results.

You should always consider that the timestamps are controllable by applications, therefore there's nothing to stop a particular application setting its own rules for timestamps. In particular, an application could access a file as a memory mapped file in which case it appears that no timestamp changes are performed by the operating system.

Unlike FAT drives, NTFS stores the time values in Universal Coordinated Time (UTC) format, which means that the same timestamp will display differently when viewed from different time zones.

Windows file systems use a technique that Microsoft refer to as tunneling, to retain timestamps and short file names in some circumstances. This comment by Raymond Chen is an interesting read on the subject: "The apocryphal history of file system tunnelling". This Microsoft Knowledge Base article provides more details: "Windows NT Contains File System Tunneling Capabilities".

Further information File Times.

Timestamps in Microsoft Office Documents

Some of the Microsoft Office documents (Word, Excel, and PowerPoint) have additional timestamps to those provided by the operating system's disk filing system. These are exposed as document properties (through the respective application's object model) and via the general structured storage file formats of the native document formats. You can see the structured storage timestamps from Windows Explorer in the file's Summary property page.

Microsoft Office documents maintain the following time related structured storage document properties:

Created (PIDSI_CREATE_DTM)
Last Saved (PIDSI_LASTSAVE_DTM)
Edit Time (PIDSI_EDITTIME)
Last Printed (PIDSI_LASTPRINTED)

TouchPro (V5) can modify the Created and Last Saved structured storage file timestamps. However, the Office applications only partly honour any changes. Other applications that use structured storage may honour any changes in full, or not at all.

The following descriptions are based on my analysis of Microsoft Word and Excel 2003.

In Word, the Properties, General page consistently displays the current file system timestamps. The Properties, Statistics page appears to display the structured storage Created timestamp, but the Modified value displays the file system timestamp.

Excel behaves similarly to Word, but has an additional twist – it changes the Modified (and last accessed) timestamp value (both the file system and the structured storage values) when it loads a file even though the file hasn't been changed. If you close the file without changing it, it restores the original values.

Additionally, if you display the created and save date fields in a Word document, the saved date does not necessarily match the Statistics page Modified value - it appears to be something else separate from this.

These behaviours mean that it’s only possible for changes to the Created structured storage timestamp to have any effect for Microsoft Office documents. Additionally, you can’t rely on this behaviour in future versions of Office which might alter the implementation.

Proviso...

These notes are to the best of my understanding. They should not be taken as fact. Different operating systems and service packs may intentionally (or accidentally) introduce different behaviour to the core operating system, and different applications can introduce their own behaviour. You should validate any behaviour on your own system to your own satisfaction.

If you find any inaccuracies in this information, please contact us and let us know and we'll update it.

 

Copyright © JD Design 2024