From: Gert D. <ger...@pa...> - 2004-03-17 17:27:43
|
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" <ma...@ac...> To: "Gert Driesen" <ger...@pa...> Cc: "Nant-Developers (E-mail)" <nan...@li...> 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" <ma...@ac...> > > To: "Gert Driesen" <ger...@pa...> > > Cc: "Nant-Developers (E-mail)" <nan...@li...> > > 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 > >>nan...@li... > >>https://lists.sourceforge.net/lists/listinfo/nant-developers > >> > >> > > > > > > > |