I have this business application, a winform client which communicates with WCF services. The client is targeted to .net 3.5 framework and the IDE is Visual Studio 2010. The project contains a reference to Microsoft Internet Controls and Interop.SHDocVw which is COM object. Our projects target architecture is set to "AnyCPU"
我们使用CCC.net建筑服务器,向我们的不同环境、试验、QA和生产应用。
在为生产环境建造和将产品安装在64台视窗7机上时,由于格式不正确,未能装载“SHDocVw”。 在安装32台轨道XP机器时,它像一家药店。
我知道,我可以尝试为“x86”而不是“AnyCPU”确定我的全方位解决办法,但重要的是,在使用先前版本的“mbuild”(v3.5)时,它会像一个药店。 为什么? 这难道是ms四版的ug子吗?
The task in CC.net looks like this
<!-- Deploy of clickonce -->
<msbuild>
<executable>C:WINDOWSMicrosoft.NETFrameworkv4.0.30319MSBuild.exe</executable>
<workingDirectory>****</workingDirectory>
<projectFile>PublishApplication.xml</projectFile>
<buildArgs>
/p:ProjectToPublish=******
/p:Configuration=Release
/v:diag
/p:ApplicationVersion=1.0.1.$[$CCNetLabel]
/p:InstallUrl="*****"
/p:NewVersionDeployFolder="*****_$[$CCNetLabel]"
/p:ProductName="*****Test"
/p:PublisherName="*****"
/p:UpdateEnable="true"
/p:UpdateRequired="true"
/p:MinimumRequiredVersion=1.0.1.$[$CCNetLabel]
</buildArgs>
<timeout>900</timeout>
<logger>C:Program FilesCruiseControl.NETserverThoughtWorks.CruiseControl.MSBuild.dll</logger>
</msbuild>
PublishApplication.xml做两件事情,如制作文件夹和复制文件,但建筑本身就是这项任务。
<Target Name="PublishApplication" DependsOnTargets="Clean">
<Message Text="Publishing application"/>
<MSBuild Projects="$(ProjectToPublish)" Targets="Publish" />
</Target>