473,473 Members | 2,170 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

devenv from command line doesn't add project references...

(repost under MSDN account)

When building a solution that consists of one managed C++ project with
a project reference to a C# project in the same solution, there is a
bug when trying to build from the command line. The /FU arguments that
should be present for the project's references appear in the IDE's
buildlog.htm but they do not appear when built from the command line.
Everything builds just fine from the IDE. We are running on XP SP2
with VS2003 7.1.3088. This seems to be a very obvious bug. Has anyone else
encountered it? Is a fix planned for it? If so, when?

A workaround we have found is to include #using directives in the C++
code and set the correct "resolve #using references" in the project.
These command line arguments don't appear to get lost when built from
the command line.

Another solution appears to using a real reference to the dlls instead
of using project references.
Jul 21 '05 #1
6 3077
Hi Chris,

First of all, I would like to confirm my understanding of your issue. From
your description, I understand that the devenv solution build at command
prompt doesn't take care of references added in solution explorer. If there
is any misunderstanding, please feel free to let me know.

Based on my research, this is a known issue. This is because the project
reference resolution code is assuming that the IDE is interactive while it
is not. This issue will be fixed in next version of VS.NET. Sorry for the
inconvenience.

HTH.

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jul 21 '05 #2
For confirmation: Your summary of the problem is not quite as specific as we
have seen, meaning that in some cases it actually does work, and it is only
when the assembly being compiled is Managed C++ that the references aren't
properly included.

Also, the second workaround to this problem was to add an Assembly Reference
to the dll instead of a project reference; however, this doesn't appear to
work when the referenced dll is built as Managed C++ instead of C#. In this
case, the same problem occurs - the /FU arguments do not appear as part of the
build command line. In this case, the first workaround must be used instead.

The next version of VS.NET isn't scheduled for some time; is there any plans
for a service pack or hotfix that will address this problem?

Chris

Kevin Yu [MSFT] wrote:
Hi Chris,

First of all, I would like to confirm my understanding of your issue. From
your description, I understand that the devenv solution build at command
prompt doesn't take care of references added in solution explorer. If there
is any misunderstanding, please feel free to let me know.

Based on my research, this is a known issue. This is because the project
reference resolution code is assuming that the IDE is interactive while it
is not. This issue will be fixed in next version of VS.NET. Sorry for the
inconvenience.

HTH.

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jul 21 '05 #3
Hi Chris,

I'm not quite sure if it will be fixed in service packs or hotfixes. For a
hotfix, you can try to contact Microsoft Product Support Services. You can
contact Microsoft Product Support directly to discuss additional support
options you may have available, by contacting us at 1-(800)936-5800 or by
choosing one of the options listed at
http://support.microsoft.com/default...d=sz;en-us;top. If they have
confirmed this a bug, they will help you out free of charge. Thanks!

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jul 21 '05 #4
The only additional bit of information that we have found is that the ability
to compile the solution from the command line is controlled by the existence
of a single Managed C++ project. If this project has already been compiled
once from the IDE, then the solution will continue to compile properly from
the command line (and the /FU are properly used). On the other hand, if this
project's compiled DLL does not exist, then once again the /FU arguments are
left off and the solution does not compile. We haven't been able to figure
out what's unique about this one project - it is a Managed C++ project.
Originally it was at the top of the dependency chain for Managed C++ projects
- it depended on other MC++ projects, but no other MC++ project depended on
it. Now, however, there is one other MC++ project that depends on this
project, yet the devenv behavior hasn't appeared to change. Even copying the
project's final DLL from one computer to another will fix the problem.

Is this the same problem to which you were referring earlier, or does this
sound like something different/new? Are there any ways to fix or work around
this problem?

thanks
Chris

Kevin Yu [MSFT] wrote:
Hi Chris,

I'm not quite sure if it will be fixed in service packs or hotfixes. For a
hotfix, you can try to contact Microsoft Product Support Services. You can
contact Microsoft Product Support directly to discuss additional support
options you may have available, by contacting us at 1-(800)936-5800 or by
choosing one of the options listed at
http://support.microsoft.com/default...d=sz;en-us;top. If they have
confirmed this a bug, they will help you out free of charge. Thanks!

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jul 21 '05 #5
Hi Chris,

According to the description, I think this is the same problem as I
mentioned. You can try to get a hotfix from Microsoft PSS as I gave in my
last post or pick up from the following link:

http://support.microsoft.com/common/...gp;en-us;offer
prophone

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jul 21 '05 #6
Kevin,

Like Christopher I am having similar problems building Managed C++
solutions from the command line. As you stated, the build fails if it
uses project references instead of assembly (DLL) references. I've
changed my projects to not use project references so that I can run
command line builds. It 'only' took 2-3 days to figure this out...

First question is when is the next version of .NET coming out? Is there
any chance that a service pack for .NET 2003 to be released beforehand?

Second, someone should complain LOUDLY to the .NET development team
that this type of bug is completely unacceptable. Anyone who is
developing software for a living is almost certainly using an automated
build system that requires the compiler to be run from the command
line. Obviously, whoever setup the matrix of possible solution
configurations to perform regression testing fell down on the job.
Additionally, I won't even begin to start in on other intermittent
crashes of the .NET development environment.

Please pass these comments along to the appropriate people, thanks.

Regards,
Eric Strennen
Senior Software Engineer
Imago Scientific Instruments
Kevin Yu [MSFT] wrote:
Hi Chris,

First of all, I would like to confirm my understanding of your issue. From your description, I understand that the devenv solution build at command prompt doesn't take care of references added in solution explorer. If there is any misunderstanding, please feel free to let me know.

Based on my research, this is a known issue. This is because the project reference resolution code is assuming that the IDE is interactive while it is not. This issue will be fixed in next version of VS.NET. Sorry for the inconvenience.

HTH.

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."


Jul 21 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: SR | last post by:
Hi Would suggest that instead of using the process class and invoking the devenv, u try using the VS.Net object library. This will help you perform the operations in a much more controlled way....
0
by: micc | last post by:
I am using devenv to build a solution. The Solution comprises 2 projects :- one C++ and the other a Fortran project. I created this solution by automatically converting a Visual Studio version...
6
by: Christopher Bohn | last post by:
(repost under MSDN account) When building a solution that consists of one managed C++ project with a project reference to a C# project in the same solution, there is a bug when trying to build...
2
by: roel.schreurs | last post by:
Sometimes, I want to archive or transport a solution. In such cases, I would like to remove all redundant files from the solution, i.e. all compiler output. The documention describes the command...
1
by: wandii | last post by:
Hi, I've been working with devenv from the command line for the last couple of days and cannot get to build the msi file correctly. if I excecute the devenv.exe via the command line or batch...
0
by: Narasimham | last post by:
Hi, I was able to successfully create a new project using the devenv command line arguments. I did devenv /command np and then specified the name of the project and its location in the
4
by: chaitu | last post by:
Hi guys, I've written a parallel build program (in Perl) that takes a pre-computed dependency tree of many projects in 2 visual studio .net 2003 solution (.sln) files here at my company, and...
6
by: =?Utf-8?B?YXByMDUyNA==?= | last post by:
I am wondering if there is a devenv switch that will ignore build dependencies that are set in .xxproj files. At the command line I am attempting to build individual projects that I do not want...
5
by: Samuel R. Neff | last post by:
Can I launch devenv.exe and specify a web site to open via command line? No solution or project file, just a web site. Thanks, Sam ...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...
1
muto222
php
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.