当我在comspec行中使用文字文件路径时,我有stdout提供给变量,但为什么我不能使用变量代替我想要分析的文件名?
请注意,mediainfo已经(成功)在自己的参数中使用%符号。那么如何让comspec将%LongPath%视为实变量呢? 我已经尝试在%Longpath%周围添加一对额外的引号,但没有运气。
Loop %0%
{
Path := %A_Index%
Loop %Path%, 1
LongPath = %A_LoopFileLongPath%
SplitPath LongPath, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive
objShell := ComObjCreate("WScript.Shell")
objExec := objShell.Exec(comspec " /c C:\MediaInfo.exe --Inform=Video;%FrameRate% %LongPath%")
framerate := ""
while, !objExec.StdOut.AtEndOfStream
framerate := objExec.StdOut.ReadAll()
msgbox %framerate%
}
感谢您的一些专业知识。
答案 0 :(得分:0)
关键是用引号括起appname和参数,(并确保在最后一个引号之前留出额外的空格),然后不要在引号中包含你的最终变量。