Una pregunta, porqué no se imprime el mismo valor con "%%~tA" y con la variable "%var%"?, al ejecutar este bat, si hay varios archivos en "MiDir" %var% solo queda con la fecha de modificación del último de ellos.
@echo off
FOR %%A IN ("C:\MiDir\*.*") DO (
set var=%%~tA
echo %%~tA %var%
)
@echo on
Ejemplo de salida:
01/07/2008 11:38 a.m. 02/07/2008 05:20 p.m.
02/07/2008 05:11 p.m. 02/07/2008 05:20 p.m.
28/07/2008 01:04 p.m. 02/07/2008 05:20 p.m.
02/07/2008 05:20 p.m. 02/07/2008 05:20 p.m.