通过 Windows 任务计划程序调用 SSIS 包时,发送邮件任务在 SSIS 中不起作用

Posted

技术标签:

【中文标题】通过 Windows 任务计划程序调用 SSIS 包时,发送邮件任务在 SSIS 中不起作用【英文标题】:Send mail task is not working in SSIS when SSIS package is called through windows task scheduler 【发布时间】:2013-03-10 20:03:15 【问题描述】:

我有一个 SSIS 包,它读取文件夹中的 csv 文件并将数据上传到数据库中。它还有一个发送邮件组件,用于在读取 csv 文件并上传数据后发送邮件。此包是从 C# 控制台应用程序以编程方式调用的。在控制台应用程序中,该包会为文件夹中存在的每个文件调用一次。此控制台应用程序计划通过 Windows 任务计划程序在每天的特定时间运行。

我面临的问题是,当我直接双击控制台应用程序的exe并运行它时,数据上传成功,邮件也正在发送。但是,当从任务计划程序调用同一个控制台应用程序的 exe 时,来自 csv 文件的数据已成功上传,但未发送邮件(在计划程序的情况下邮件功能不起作用)

可能是什么问题?

【问题讨论】:

这似乎倒退了,因为控制台应用程序不应该通过 Windows 任务计划程序调用 SSIS 包。相反,SSIS 包应该通过 SSIS 代理进行调度。 SSIS 也有用于迭代文件集合的内置工具。 @MetroSmurf 我正在通过控制台应用程序调用 SSIS 包,因为我必须根据控制台应用程序的某些条件动态地将值传递给 ssis 包变量,我确信这可以从 SSIS 本身完成,但我我是 ssis 的新手 【参考方案1】:

最可能的原因是权限问题;运行控制台应用程序的帐户无权在您的帐户下发送电子邮件。控制台应用程序是否生成任何错误日志、Windows 事件日志条目等?

【讨论】:

它显示它在同一帐户下运行,但我必须单击“显示所有用户的进程”才能查看控制台应用程序进程......我也在记录控制台时发生的任何异常应用程序运行也会记录包抛出的错误,我没有收到任何错误...

以上是关于通过 Windows 任务计划程序调用 SSIS 包时,发送邮件任务在 SSIS 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

从任务计划程序调用 ClickOnce 应用程序

在 Windows Server 2008 R2 中安排任务

数据仓库之SSIS开发

SSIS常用的包—WMI数据读取任务和WMI事件监听任务

使用 windows 计划任务及时调用控制台应用程序。这是一种有效的方法吗

vbscript 通过任务计划程序在 Windows 10 中打开 excel 文件