pense que no se podria hacer algo asi en batch 

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúCreador : V_D_Y
Citar# Source USB DÉTECTER LA CONNEC/DÉCONNECTION D'UN PÉRIPHÉRIQUE DE STOCKAGE. Permet de détecter si un périphérique USB de stockage "STORAGE" Ex: MEM FLASH, HDD, MEM APPA PHOTO ... est connecté ou déconnecté du PC, pour déclench...
Attribute VB_Name = "mdErrores"
' FINALIDAD: GESTIONA Y GRABA LOS ERRORES PRODUCIDOS EN EL PROGRAMA EN UN
' FICHERO PLANO
' PARAMETROS
' ErrDesc: descripcion del error
' ErrMod: localización del error
'Sacado de un programa OpenSource llamado Zas
Option Explicit
Public FileError As String
'FileError = "Error.log"
'llamada en los forms: 'GrabaErr Err.Description, Err.Number, "Main :: Gen"' 'esto lo cambias segun el procedimiento desde donde es llamado
Public Function GrabaErr(ErrDesc As String, ErrNum As String, ErrMod As String)
Open App.Path & "\" & FileError For Append As #3
Print #3, "------> "
Print #3, "Version : " & App.Major & "." & App.Minor & "." & App.Revision
Print #3, "Error en el modulo " & ErrMod
Print #3, "Fecha y Hora: " & Date & " " & Time & " Error: " & ErrNum & " :: " & (ErrDesc)
Print #3, "<------"
Close #3
MsgBox Err.Number & vbCrLf & Err.Description & vbCrLf & " Se ha grabado el error en " & FileError, vbCritical, "Error en programa"
End Function