@echo off setlocal enabledelayedexpansion set made=ECOM & set title=HW Module GetVersion title %made%: %title% %date% %time:~0,8% set pnum=2 :main cls echo. ********************************************************** echo. Function:%title% echo. Made by:%made% echo. ********************************************************** if exist HWModuleVersion.txt del HWModuleVersion.txt REM echo Please input file name or folder: echo ------HW Module Version:6.2.3.X-%date%------>>HWModuleVersion.txt set folder= %~dp0 set strFolder=%folder% echo Current File Folder:%folder% echo. echo Please wait... echo. for /f "delims=""" %%i in ('dir /a-d /b /s %folder% 2^>nul') do ( for /f "tokens=1,2" %%j in ('dir /a /tc "%%i" ^| findstr "%%~nxi"') do ( if not "%%j"=="Directory" ( REM Because subfolder's file maybe duplicated,check it before output it echo %%~nxi|findstr "exe\>" >nul 2>nul set relativepath=%%~dpi set relativepath=!relativepath:~%a%! set curfile=!relativepath!%%~nxi REM Absolute path is %%~dpi%%~nxi if !errorlevel! equ 0 ( for /f "delims=" %%m in ('cscript //nologo getFileVersion.vbs %%i') do ( echo %%~nxi Version:%%m>>HWModuleVersion.txt ) echo FileType:exe %%~nxi ) else ( echo %%~nxi|findstr "dll\>" >nul 2>nul REM echo errorlevel = !errorlevel! if !errorlevel! equ 0 ( echo FileType:dll %%~nxi for /f "delims=" %%m in ('cscript //nologo getFileVersion.vbs %%i') do ( echo %%~nxi Version:%%m>>HWModuleVersion.txt ) ) ) ) ) ) echo Finished!!! pause;