RE: VS.NET 2003 doesn't honor the version of assemblies in .licx file
From: Felix Wu [MSFT] (felixwu_at_online.microsoft.com)
Date: 05/25/04
- Previous message: Gary Chang: "RE: Why does VS.NET 2003 lowercase my pathnames?"
- In reply to: Brock Reeve: "VS.NET 2003 doesn't honor the version of assemblies in .licx file"
- Messages sorted by: [ date ] [ thread ]
Date: Tue, 25 May 2004 06:00:14 GMT
Hi Brock,
I was reviewing your question when I realized that it's already a week old.
I apologize for not getting to you sooner. If you are still monitoring this
issue, please post another note to let me know you are still there. Then I
will investigate this for you.
Thanks,
Felix Wu
=============
This posting is provided "AS IS" with no warranties, and confers no rights.
--------------------
>From: "Brock Reeve" <breeve@newsgroups.nospam>
>Subject: VS.NET 2003 doesn't honor the version of assemblies in .licx file
>Date: Tue, 18 May 2004 13:58:19 -0500
>Lines: 94
>Organization: National Instruments
>X-Priority: 3
>X-MSMail-Priority: Normal
>X-Newsreader: Microsoft Outlook Express 6.00.2800.1409
>X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1409
>Message-ID: <Oyqv#oQPEHA.3944@tk2msftngp13.phx.gbl>
>Newsgroups: microsoft.public.vsnet.ide
>NNTP-Posting-Host: client-72-213.natinst.com 130.164.72.213
>Path:
cpmsftngxa10.phx.gbl!TK2MSFTFEED01.phx.gbl!TK2MSFTNGP08.phx.gbl!tk2msftngp13
phx.gbl
>Xref: cpmsftngxa10.phx.gbl microsoft.public.vsnet.ide:12303
>X-Tomcat-NG: microsoft.public.vsnet.ide
>
>VS.NET calls lc.exe at build time to extract the licenses from the types in
>the .licx file, but it doesn't behave the same way as if you called lc.exe
>from the command line stand alone. The two .licenses files generated are
>different even though the .licx file is the same.
>
>
>
>For example, suppose my .licx file had these contents:
>
>
>
>NationalInstruments.Restricted.AnalysisLicenser,
>NationalInstruments.Analysis.Enterprise, Version=7.0.0.341,
Culture=neutral,
>PublicKeyToken=4544464cdeaab541
>
>NationalInstruments.Net.DataSocket, NationalInstruments.Net,
>Version=7.0.0.341, Culture=neutral, PublicKeyToken=4544464cdeaab541
>
>NationalInstruments.Net.DataSocketServer, NationalInstruments.Net,
>Version=7.0.0.341, Culture=neutral, PublicKeyToken=4544464cdeaab541
>
>NationalInstruments.Net.DataSocketSource, NationalInstruments.Net,
>Version=7.0.0.341, Culture=neutral, PublicKeyToken=4544464cdeaab541
>
>NationalInstruments.UI.WindowsForms.Led,
>NationalInstruments.UI.WindowsForms, Version=7.0.0.341, Culture=neutral,
>PublicKeyToken=4544464cdeaab541
>
>NationalInstruments.UI.WindowsForms.Legend,
>NationalInstruments.UI.WindowsForms, Version=7.0.0.341, Culture=neutral,
>PublicKeyToken=4544464cdeaab541
>
>NationalInstruments.UI.WindowsForms.ScatterGraph,
>NationalInstruments.UI.WindowsForms, Version=7.0.0.341, Culture=neutral,
>PublicKeyToken=4544464cdeaab541
>
>NationalInstruments.UI.WindowsForms.Switch,
>NationalInstruments.UI.WindowsForms, Version=7.0.0.341, Culture=neutral,
>PublicKeyToken=4544464cdeaab541
>
>NationalInstruments.UI.WindowsForms.WaveformGraph,
>NationalInstruments.UI.WindowsForms, Version=7.0.0.341, Culture=neutral,
>PublicKeyToken=4544464cdeaab541
>
>
>
>If I run "lc /target:test /complist:license.licx" the .licenses file
>generated is correct.
>
>
>
>If I edit the Version part of each type above in the .licx file to be
>"BadVersion" and run "lc /target:test /complist:license.licx" I get an
error
>LC0003 error saying "licenses.licx(3) : error LC0003 : Unabled to resolve
>type 'NationalInstruments.Restricted.AnalysisLicenser,
>NationalInstruments.Analysis.Enterprise, Version=BadVersion,
>Culture=neutral, PublicKeyToken=4544464cdeaab541' for every type in the
>.licx file. This makes sense. The version is bad.
>
>
>
>What doesn't make sense is if I open the same .licx file in a VS project
and
>make the same change by changing the Version part to "BadVersion" and
build,
>VS is fine with it. The generated .licenses file in the obj\Debug\ folder
>contains the 7.0.0.341 version. This seems weird. I would expect consistent
>behavior.
>
>
>
>This shows that VS is not reading the .licx file every time you
>build/rebuild. It must be caching the types in the .licx file at certain
>times. This seems buggy and is causing troubles. I want to be able to
>change the versions in the .licx file and have VS honor it the next time a
>build/rebuild occurs. For example, if I change the Version part of each
type
>to 7.1.0.213 in the .licx file I would expect the .licenses file to contain
>7.1.0.213 version the next time a build/rebuild occurs in VS. This does
not
>happen even though the 7.1.0.213 assemblies are in the GAC. However,
running
>lc.exe on 7.1.0.213 .licx file contains the 7.1.0.213 versions in the
>.licenses file.
>
>
>
>When is the .licx type caching done? How can I force the contents of the
>type cache that VS is holding to be refreshed so my version change in the
>.licx file is honored? This seems like a bug.
>
>
>
>
>Thanks,
>
>Brock
>
>
>
- Previous message: Gary Chang: "RE: Why does VS.NET 2003 lowercase my pathnames?"
- In reply to: Brock Reeve: "VS.NET 2003 doesn't honor the version of assemblies in .licx file"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|