Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用SSIS中的Selenium执行c#控制台应用程序_C#_Sql_Selenium_Ssis_Agent - Fatal编程技术网

使用SSIS中的Selenium执行c#控制台应用程序

使用SSIS中的Selenium执行c#控制台应用程序,c#,sql,selenium,ssis,agent,C#,Sql,Selenium,Ssis,Agent,我有一个C#控制台应用程序,它使用Selenium NuGet包。此过程将打开一些URL并将页面中的任何数据保存到SQL Server中 问题是,当我只执行c#应用程序时,它工作正常 然后我在SSIS中创建一个SSIS包和一个脚本任务,并调用这个c#app 同样,当我从SSIS执行时,它工作正常,但当我从SQL代理计划SSIS包时,该过程显示它正在运行,但从未启动也从未完成 如果我要改变什么,有人知道吗 问候 编辑: 这是我发展的细节 我的SSIS解决方案只包含一个dtsx,我在其中创建了两个

我有一个C#控制台应用程序,它使用Selenium NuGet包。此过程将打开一些URL并将页面中的任何数据保存到SQL Server中

问题是,当我只执行c#应用程序时,它工作正常

然后我在SSIS中创建一个SSIS包和一个脚本任务,并调用这个c#app

同样,当我从SSIS执行时,它工作正常,但当我从SQL代理计划SSIS包时,该过程显示它正在运行,但从未启动也从未完成

如果我要改变什么,有人知道吗

问候

编辑:

这是我发展的细节

我的SSIS解决方案只包含一个dtsx,我在其中创建了两个步骤

第一步是一个脚本,它发送一封邮件,指示流程正在启动

第二步是执行“Scrap.exe”的流程任务。scrape.exe是c#开发工具,它使用Selenium删除一些URL。当我从VisualStudio运行此解决方案时,结果是成功的

然后在SQL代理(SQL Server 2016)中创建作业。此作业只有一个执行dtsx的步骤

最后,当我执行此作业时(右键单击->在步骤开始作业),作业将正确运行,但永远不会完成


对不起,我的英语是阿根廷语。

SQL Server代理帐户是非用户(服务)帐户,因此无法访问active Desktop会话进行任何交互

无法从非用户Windows帐户“与桌面交互” 由于Windows 6.1(Longhorn,Vista),即使您在Windows帐户下运行SQL代理并启用“与桌面交互”,您也会得到相同的结果,因为它被认为是一个安全漏洞

您可能需要创建一个Windows应用程序,从SSI获取请求,并处理和响应DB, 此应用程序需要在真实用户帐户上启动,并且会话必须保持打开状态


请记住,用户可以锁定屏幕,但无法注销,因为应用程序将被关闭。

有许多事情可能出错,因此要诊断您的问题,请提供一些附加信息:您是否使用日志记录来跟踪任务的状态?如果没有,实现日志记录的两种方法是通过脚本任务直接日志记录,或使用工具栏中的SSIS>日志记录。您在运行代理时是否收到任何错误?您部署在哪个版本的SQL Server上,以及在SSIS包中使用哪个目标版本?在部署之前,您是否将包转换为“包部署”?嗨,BenG!谢谢你的回复!我编辑的帖子给你带来了更多的信息。我试图将包转换为“包部署”,但没有发生任何事情。谢谢回复。我将尝试用C#代码复制SSIS包,并使用windows任务调度器对其进行调度。