Matthew,

I can also guarantee 100% that VS.NET (2003) is only using the hintpath as a
last resort ;)

The actual order is :

1. the project directory (at least this is what MS says, but I doubt this)
2. The ReferencesPath (as stored in the user options file, eg.
<project>.csproj.user)
3. The .NET Framework directory
4. The AssemblyFolder (even if the AssemblyFolderKey is not specified on the
reference itself)
5. The HintPath

Please send me a repro to convince me otherwise, but make sure you first
check if you don't have entries in the ReferencesPath attribute in the .user
file :)

Gert

----- Original Message ----- 
From: "Matthew Mastracci" <[EMAIL PROTECTED]>
To: "Gert Driesen" <[EMAIL PROTECTED]>
Cc: "Nant-Developers (E-mail)" <[EMAIL PROTECTED]>
Sent: Wednesday, March 17, 2004 5:03 PM
Subject: Re: [nant-dev] Re: Solution task fixes + speedups


> I can absolutely, 100% guarantee that this is the case.  I have a
> .csproj file with the following reference:
>
>                  <Reference
>                      Name = "C1.Win.C1FlexGrid"
>                      AssemblyName = "C1.Win.C1FlexGrid"
>                      HintPath = "..\supportDlls\C1.Win.C1FlexGrid.dll"
>                  />
>
> The DLL in the HintPath is of version 1.1.20024.78.  When I compile with
> VS.NET, the DLL that ends up in the bin directory is version 1.1.20024.78.
>
> There is also an AssemblyFolder entry that looks like this:
>
> C1Studio = C:\Program Files\ComponentOne Studio.NET\bin
>
> In this directory is C1.Win.C1FlexGrid.dll version 2.1.20034.144.  This
> is not the DLL we want to compile against.
>
> If you want to revert the ordering, please wrap the assembly folder
> stuff with a check for the "AssemblyFolderKey = blah" attribute of the
> reference.  AFAIK, if this attribute is missing, VS.NET ***will not***
> use the AssemblyFolders for resolution.
>
> Does this sound acceptable?  It looks like with this logic, I should be
> able to compile my project (while keeping your resolution order intact).
>
> Gert Driesen wrote:
>
> > Matthew,
> >
> > I looked into this again, and I'm pretty sure I'm right :
> >
> > The HintPath is definitely the "last resort" for VS.NET.  So we should
undo
> > your change (unless you can send me a repro).
> >
> > The issue you encountered was probably due to the fact that we don't yet
use
> > the path list in the ReferencesPath attribute (of the Settings node) in
the
> > .user file (the project user options) to locate assemblies. (feel free
to
> > add support for this to the solution task :-))
> >
> > Gert
> > ----- Original Message ----- 
> > From: "Matthew Mastracci" <[EMAIL PROTECTED]>
> > To: "Gert Driesen" <[EMAIL PROTECTED]>
> > Cc: "Nant-Developers (E-mail)" <[EMAIL PROTECTED]>
> > Sent: Tuesday, March 16, 2004 11:35 PM
> > Subject: [nant-dev] Re: Solution task fixes + speedups
> >
> >
> >
> >>Gert Driesen wrote:
> >>
> >>
> >>>But you actually have two different "assembly folders" : you have the
> >>>assembly folder that is referenced in your project file using the
> >>>"AssemblyFolderKey" attribute of the <Reference> element, eg.
> >>
> >>...
> >>
> >>
> >>>and you have the rest of the AssemblyFolder registry keys.  Perhaps
> >
> > VS.NET
> >
> >>>first checks the AssemblyFolderKey, then the HintPath and then the rest
> >
> > of
> >
> >>>the assembly folders.  But I'm just guessing here.
> >>
> >>Aha...  I don't have an AssemblyFolderKey attribute on my reference -
> >>it's a direct file reference.  The AssemblyFolder check was still
> >>picking it up, however.
> >>
> >>Perhaps the order was correct as you had it, but we should skip the
> >>assembly folder check if that attribute is missing.
> >>
> >>
> >>>>Even if Microsoft describes it as a last resort, it's definitely not
how
> >>>>VS.NET does it.
> >>>
> >>>
> >>>I'll verify it tomorrow, and report it to MS if necessary
> >>
> >>Cool.  Thanks!
> >>
> >>Matt.
> >>
> >>
> >>-------------------------------------------------------
> >>This SF.Net email is sponsored by: IBM Linux Tutorials
> >>Free Linux tutorial presented by Daniel Robbins, President and CEO of
> >>GenToo technologies. Learn everything from fundamentals to system
> >>administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
> >>_______________________________________________
> >>nant-developers mailing list
> >>[EMAIL PROTECTED]
> >>https://lists.sourceforge.net/lists/listinfo/nant-developers
> >>
> >>
> >
> >
>
>
>



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers

Reply via email to