0

我遇到了使用 TDAPIOLELib 库在 QC 中触发测试用例的问题。当我使用 Visual Studio 2010 调试应用程序时,QC 调度程序开始运行,然后测试用例也在远程机器上运行,但在 IIS 中部署后,我收到错误,因为在触发 startexecution 的行上访问被拒绝。

    TSScheduler scheduler = testset.StartExecution(""); /* Getting access denied error in this line  */
    scheduler.TdHostName = "RemoteMachineNameHavingQTP";
    scheduler.Run();

在访问 IIS 中托管的 Web 应用程序时使用 try-catch 块得到此错误。但是在 Visual Studio 中调试应用程序时没有问题。在调试时我能注意到的是,当在代码中创建 TSScheduler 的对象时,调度程序会在我的机器中被触发,并且能够在我的任务栏中看到它接近日期。但奇怪的是从外部访问时会导致错误。它是否与 IIS 有关,或者任何人都可以建议如何解决此问题?

4

1 回答 1

1

终于找到了,去run->eventvwr。然后检查错误。COM 异常出现错误。然后按照 microsoft 为错误代码提供的说明提供对 COM 对象的必要访问权限。

基本上,用户 machinename\asp.net 无权访问机器中存在的调度程序 exe。由于我是管理员,因此在调试时它可以工作,但在托管后它在提供必要的访问权限后它不起作用。

于 2013-10-15T18:21:27.213 回答