打开文件,等待其退出/退出,然后继续批处理文件

||
    SETLOCAL enableextensions enabledelayedexpansion
    ::  change your Given/First name
    set MYSELF=Felipe
    set BOSS=Jon
    set \"MYFILE=Timesheet_%MYSELF%_FY10.11_Version_1.1.xls\"
    set \"MYLOCKEDFILE=%MYFILE%.gpg\"
    set \"SAFETY=~%MYFILE%\"

    ::  PFx86: this variable is needed to avoid breaking \'if\' statement below
    set \"PFx86=%PROGRAMFILES(x86)%\"
    if exist (%PFx86%) (
        set \"GPGBIN=%PFx86%\\GNU\\GnuPG\\\"
        echo 64-bit windows...
    ) else (
        set \"GPGBIN=%PROGRAMFILES%\\GNU\\GnuPG\\\"
        echo 32-bit windows...
    )

    if exist %MYLOCKEDFILE% (
        echo locked file found
        for %%F in (%MYLOCKEDFILE%) do (
            set ATTRIBS=%%~aF
            set READ_ATTRIB=!ATTRIBS:~1,1!

            if !READ_ATTRIB!==r (
                echo locked file is RO...
                ::  svn lock
                TortoiseProc.exe /command:lock /path:%MYLOCKEDFILE%
            ) else (
                echo locked file is RW...
            )

            ::  decrypt
            echo decrypting...
            \"%GPGBIN%\\gpg.exe\" \"%MYLOCKEDFILE%\"
        )

        if exist %MYFILE% (
            echo opening %MYFILE%...
            %MYFILE%
            echo encrypting...
            ::  encrypt
            gpg.exe -r %BOSS% -r %MYSELF% -e %MYFILE%
            echo deleting %MYFILE%...
            del %MYFILE%
        )
    )
我有一个执行以下操作的批处理文件 解密timesheet.xls.gpg文件 用打开 \“ timesheet.xls \” 然后用gpg再次加密 时间表打开后,它将立即继续进入“加密”阶段。 如何使其等待直到XLS文件关闭才能继续运行脚本(无需用户的明确干预)?
已邀请:
我用了
START /WAIT \"title\" \"..\\path\\to\\excel.exe\" \"%MYFILE%\"
而且有效。
您最好不要为此使用批处理文件,而要使用AutoIt,它可以等到Excel完成电子表格的打开,然后再从那里继续进行到加密阶段。 要引用他们的页面: AutoIt v3是一种免费的,类似于BASIC的脚本语言,旨在自动执行Windows GUI和常规脚本。它结合了模拟按键,鼠标移动和窗口/控件操作的组合,从而以其他语言(例如VBScript和SendKeys)不可能或不可靠的方式自动执行任务。 AutoIt也非常小巧,功能齐全,可以直接在所有版本的Windows上运行,而无需烦人的“运行时”! 这将更适合手头的任务。

要回复问题请先登录注册