Hello,
I have a project where I use an ActiveX - Control in a C# Project. Further this project makes use of a C++ assembly to demonstrate C++ interop. My problem is, that I can't do a teambuild (I want to demonstrate the usage of a nightbuild including unit - tests). The problem seems to be that the build needs the generated interop assemblies (I think those are created localy, when I add the ActiveX to the project).
How can I supply them to the build How could this achieved in an automated way, so even if the activeX-Control changes rapidly
Thanks for your support,
Tobias

warning MSB3245
Derrick Ryan
my other Problem remains. My main Projekt depends on a .Net Assembly, that wrapps some old C++ code containing image processing algorithms (ImgProc.dll). The local compilation works quite fine, but the build doesn't find the depending dll. Exploring the log I found that the build doesn't build ImgProc.dll because it has a different destination Plattform (translated from german):
The project configuration "Release|Any CPU" will be compiled.
Build-Destination:
ImgProc-Destination:
The Project "ImgProc" is not selected for build in configuration "Release|Any CPU"
But There is no type selectable that would be equal for the whole project. I tried to include the dll into source control to do a pre-compile step to copy the dll, but that doesn't work too.
thanks for your help,
Tobias
DHGood
You mean simply --> add existing file to project for the assembly and than checkin I tried it this way, but I still get the same error. I even tried to copy the Assembly manual to the Buildserver and to register it like described here:
http://www.netscum.dk/germany/msdn/library/components/AufrufenEinerNETKomponenteVonEinerCOMKomponenteAus.mspx mfr=true
but I still get the same error. I already registered the used ActiveX Control on the Build Server and it is still the same.
I would be glad to get a "manual" working solution --> automation can be done later.
@Gautam
>What is the exact error you are getting
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(0,0): warning MSB3245: Dieser Verweis konnte nicht aufgelost werden: Die Interop.DicomObjects-Assembly konnte nicht gefunden werden. Vergewissern Sie sich, dass die Assembly auf dem Datentrager vorhanden ist.. Wenn dieser Verweis fur Ihren Code erforderlich ist, konnen beim Kompilieren Fehler auftreten.
I will try to translate (only the german part):
The reference could not be resolved. The Interop.DicomObjects-Assembly was not found. Make sure the Assembly is on the volume. If this reference is neccassary for the build errors during kompilation might occur.
>How have you added the reference to the ActiveX control in the first place Did you go >through Add Reference->COM tab
Yes I added it this way.
The sln looks as follows:
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DicomViewer", "DicomViewer\DicomViewer.csproj", "{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DicomViewerUT", "DicomViewerUT\DicomViewerUT.csproj", "{6E480F03-513B-4D9F-8168-015397963CFD}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{D55FE972-4536-4D73-85C1-F106D345BF31}"
ProjectSection(SolutionItems) = preProject
DicomViewer.vsmdi = DicomViewer.vsmdi
localtestrun.testrunconfig = localtestrun.testrunconfig
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ImgProc", "ImgProc\ImgProc.vcproj", "{1D822313-EC39-4CC5-A37C-64FC0BC92252}"
EndProject
Global
GlobalSection(TestCaseManagementSettings) = postSolution
CategoryFile = DicomViewer.vsmdi
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|Mixed Platforms = Debug|Mixed Platforms
Debug|Win32 = Debug|Win32
Release|Any CPU = Release|Any CPU
Release|Mixed Platforms = Release|Mixed Platforms
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Debug|Win32.ActiveCfg = Debug|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Release|Any CPU.Build.0 = Release|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{8B96BC36-D376-4FE3-B2B7-47AAC1443DDF}.Release|Win32.ActiveCfg = Release|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Debug|Win32.ActiveCfg = Debug|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Release|Any CPU.Build.0 = Release|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{6E480F03-513B-4D9F-8168-015397963CFD}.Release|Win32.ActiveCfg = Release|Any CPU
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Debug|Any CPU.ActiveCfg = Debug|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Debug|Mixed Platforms.Build.0 = Debug|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Debug|Win32.ActiveCfg = Debug|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Debug|Win32.Build.0 = Debug|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Release|Any CPU.ActiveCfg = Release|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Release|Mixed Platforms.ActiveCfg = Release|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Release|Mixed Platforms.Build.0 = Release|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Release|Win32.ActiveCfg = Release|Win32
{1D822313-EC39-4CC5-A37C-64FC0BC92252}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
Thanks for your help,
Tobias
Dario Galvani
Glad to hear you have gotten things largely working! You should not need one of the SKUs which includes testing functionality unless you want your build process to actually run tests... For more info, see http://www.microsoft.com/downloads/details.aspx familyid=1FA86E00-F0A3-4290-9DA9-6E0378A3A3C5&displaylang=en (a whitepaper on Team System licensing). From the whitepaper:
"As part of the build process, Team Foundation Server may run quality tests and/or analysis on the precompiled or compiled code. These tests rely on functionality found within Team System client products, typically within the Team Edition for Software Developers or Team Edition for Software Testers products. These products may be installed on the build machine by licensed users of those products, as long as they are not directly used by any individuals who are not licensed for those products."
-Aaron
popokay
You will probably just need to check the interop assemblies into source control. When you check out the ActiveX control to make modifications, you will need to check out the interop assemblies as well.
-Aaron
Stefano_Azzi
What is the exact error you are getting How have you added the reference to the ActiveX control in the first place Did you go through Add Reference->COM tab
Is it possible to copy paste the content of the .sln file That will give some clue.
Thanks,
Gautam
Deepatel70
finally I got it to work. The Key really is, that I have to add another entry to the Build specifying the other project to as pointed out here:
http://msdn2.microsoft.com/en-us/library/ms400767.aspx
and here:
http://forums.microsoft.com/MSDN/ShowPost.aspx PostID=345950&SiteID=1
my remaining problem is that now the build asks for an installed version of VS-Team Systems for testers on the Build Computer.
How is this solved with the licences in real life (currently I only evaluate): Do I really have to buy a Team Systems for testers only to get my Build run
thanks for your help,
Tobias