每周一次,我会获得新版本的.net程序集,我需要将其部署到我们的Axapta 2012安装中。我不想将此dll复制到每台计算机上的axapta客户端文件夹。所以我正在寻找将其部署到AOS的方式,并希望它能够自动部署在每个客户端上。
我找到了很多解决方案(这是one of them),但只有在我拥有此程序集的源代码时才能正常工作。我没有。我不能将VS项目添加到AOT'并使用VS加载项进行部署。
有没有办法将.net程序集(作为已编译的DLL)从AOS部署到每个客户端?
答案 0 :(得分:3)
如果使用“将VS投影添加到AOT”方法无法执行此操作,则可以使用SysFileDeployment
类。 Joris DG在他的博文here中证明了这一点。
在msdn上SysFileDeployment
类的描述如下:
SysFileDeployment类用于将文件从服务器部署到客户端。
在msdn上,还解释了如何执行此操作。基本上,您需要做的就是扩展此类并指向需要部署的文件(在您的情况下是一个dll)。您还必须更改解决方案的内部版本号以触发部署。
您还可以通过将dll添加到GAC来部署dll,如下所示: Axilicious: AX2012 DLL Deployment and how AX binds DLL’s at runtime
总结主要区别是:
我个人会尝试使用SysFileDeployment方法,因为它是MS提供的标准方法。如果您遇到麻烦,可能会得到支持。