J'ai récemment demandé de l'aide pour créer des sous-titres .srt. Here is the link. J'ai obtenu l'aide et tout fonctionne bien jusqu'à ce que le fichier vidéo dans le dossier ait des symboles Unicode dans son nom. Si c'est le cas, l'erreur VBScript apparaît. La question est de savoir comment faire fonctionner ce code correctement avec les symboles Unicode. Voici le code:Création de code de fichier batch avec VBScript pour travailler avec les symboles Unicode
@echo off&cls
::The Path of your Videos files
set "$VideoPath=C:\FolderwithVideos"
::If you want your Code in this BAT remove the REMs Below :
rem dir "%$VideoPath%" /O:S /b /-p /o:gn > "C:\result.txt"
rem call replacer.bat result.txt ".mp4" ""
setlocal enabledelayedexpansion
set /a $Count=1
set "$Timer=00:00:00"
(for /f "delims=" %%a in (result.txt) do (
call:getVideolength "%%a.mp4"
for /f "delims=" %%x in ('cscript //nologo getvideolength.vbs') do (
call:SumTime !$Timer! %%x
for /f "delims=" %%y in ('cscript //nologo SumTime.vbs') do set "$NewTimer=%%y"
echo !$Count!
echo !$Timer!,000 --^> !$NewTimer!,000
echo %%a
Set $Timer=!$NewTimer!
)
set /a $Count+=1
echo.
))>Output.srt
echo Done !!!
type Output.srt
pause
exit/b
:GetVideoLength
(echo dim objShell
echo dim objFolder
echo dim objFolderItem
echo set objShell = CreateObject("shell.application"^)
echo set objFolder = objShell.NameSpace("%$videoPath%"^)
echo set objFolderItem = objFolder.ParseName(%1^)
echo dim objInfo
echo objInfo = objFolder.GetDetailsOf(objFolderItem, 27^)
echo wscript.echo objinfo)>GetVideoLength.vbs
exit/b
:SumTime
echo wscript.echo FormatDateTime(CDate("%1"^) + CDate("%2"^),3^) >SumTime.vbs
exit/b
Quelle est la capture en utilisant le fichier batch ici? pourquoi n'utilisez-vous pas seulement vbscript, y a-t-il une raison à cela? –
Non, pas de raison du tout. Je pensais que ce serait plus facile, parce que cela m'est le plus familier. Personnellement, je ne code pas du tout, j'ai juste quelques connaissances de surface. S'il y a un autre moyen d'atteindre mon objectif, je vous serais reconnaissant si vous aidiez. – user5715027