2010-04-07 107 views
1

我的项目是使用Windows Workflow的语音服务器应用程序。它在IIS下作为应用程序运行。它支持一个插件系统。这是发生了什么事情:如何防止IIS尝试加载dll?

  • 将DLL加载到内存中并设置InvokeWorkflow控件的类型。
  • 当InvokeWorkflow控件运行时,它似乎从加载的程序集正确实例化了工作流 - 它完成了Initialize方法。
  • 一切崩溃灼伤,目标工作流程永远不会执行。
  • 我可以通过将DLL的副本放入应用程序的执行目录来解决此问题。工作流程然后正确执行

因此,似乎IIS正试图重新加载程序集,即使它已经在内存中。

有无论如何改变或禁用IIS中的这种行为?也许我可以编写一个钩子来拦截加载dll的请求并使用我自己的逻辑来做到这一点?

回答

0

你从哪里加载DLL?您可能会遇到一些运行时安全限制与DLL或其位置。