【问题标题】:SQL Agent Job Close Excel ProcessSQL 代理作业关闭 Excel 过程
【发布时间】:2013-01-21 23:46:55
【问题描述】:

我想创建一个 SQL 作业来关闭所有打开的 Excel 进程。我创建了一个可以双击运行的 VB 脚本。我试过了

wscript C:\Apps\DestroyExcel.vbs

使用类型 CmdExec。如何从 SQL 执行它以安排作业运行?

暗淡 objXL 出错时继续下一步 设置 objXL = GetObject(, "Excel.Application") If Not TypeName(objXL) = "Empty" Then objXL.quit 别的 msgbox "Excel 未运行。" 万一

【问题讨论】:

    标签: sql excel vbscript agent


    【解决方案1】:

    在 SSMS 中:

    1. 转到 SQL Server 代理
    2. 右击“工作” --> 新建工作
    3. 输入信息
    4. 在步骤部分,点击新建
    5. 对于类型,选择操作系统 (CmdExex)
    6. 对于命令,键入:cscript C:\myscript.vbs
    7. 设置您的日程安排
    8. 按确定

    我认为应该这样做。

    【讨论】:

    • 我试过这个选项。它成功执行,没有错误,但 Excel 仍处于打开状态。也许我应该试试 Master.XP_CMDSHELL
    • @g_shockTan 这很有趣。也许这是一个权限的事情?我认为 SQL 作业默认从 SQL Server 代理运行,它可能没有足够的权限来运行 vbs 脚本...hmmmm
    • 我在 cmd 提示符下执行它,并使用 cscript c:\apps\destroyexcel.vbs 输入。它关闭了所有 excel 进程。
    • @g_shockTan 那么它必须是权限问题。 SQL Server 代理没有足够的权限来执行 vbscript 中的语句。让我看看我能弄清楚什么
    • @g_shockTan 经过大量挖掘,我完全不知所措:(我一辈子都不能让它在我的电脑上工作。我尝试了很多东西(批量文件,新用户,具有凭据的代理),但最终我无法让它工作。我很想知道你或其他人如何解决这个问题。抱歉 g_shockTan
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多