我正在尝试创建一个自定义 CodeActivity 以与 TFS 2010 一起使用。到目前为止,我的大部分工作都基于这个系列(感谢 Ewald 对此表示感谢)。
一切都很好,直到我打到第二个为止。我正在尝试使用 Microsoft.BizTalk.ExplorerOM.dll 进行一些 BizTalk 配置。对 dll 的抱怨之一是它只是 x86,并且是来自 Microsoft 的内部 dll,我无法控制。我之前在 VS2008 中做过相同的任务,我基本上只是想将相同的功能转移到 VS2010,清理它,并将其集成到工作流程中。
当我第一次从 ExplorerOM 添加代码时,出现以下错误:
64 位进程不支持 Explorer OM。
将支持项目更改为 32 位后,我得到以下信息:
无法创建未知类型“{clr-namespace:BizTalk.Deployment.CodeActivities;assembly=BizTalk.Deployment.CodeActivities}UndeployBizTalkBindings”。
在网络上进行一些研究后,我相当确定这是由于 64 位构建过程无法加载我现在的 32 位 dll。
有没有办法将构建过程本身指定为 32 位?我没有在 TFS 中看到任何设置。我曾考虑通过一个简单的 32 位控制台应用程序运行代码并使用 InvokeProcess 活动,但我担心如果无法访问上下文对象,我将无法获得我希望实现的日志记录粒度。这项工作将相当参与。
关于如何做到这一点的任何想法?我也愿意接受其他解决方案。