Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / .NET Framework / New Users / October 2007

Tip: Looking for answers? Try searching our database.

Assembly binding at runtim

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Abhishek - 17 Oct 2007 08:21 GMT
Hi,

I am using .NET framework 2.0 and am facing a problem with assembly
versioning.

We have a many dlls which we ship as an application. Now all these
dlls are packaged and shipped as independent units. These dlls may or
may not depend on each other however 1 thing which is for sure is that
all the dlls depend on a common dll.

So to make it more clear the scenario is i have dll1, dll2, dllCommon.
Now dll1 and dll2 depends on dllCommon. The AssemlblyVersionInfo we
have set for all these dlls is 1.5.*.* . Now with each build we build
dllCommmon, dll2 and dll1 in the same order.
Once we ship the application we may have to patch any 1 of these dlls
individually. However when we try to do that the things break because
of the way runtime probes the signed dlls. (We've all of them signed
by a key). So the problem now is that even if i have to patch
dllCommon i have to ship dll1 and dll2 as well which is definitely not
possible for us.
I am sure there's a solution out there however i am not able to find
it. Any comments/help would be great inputs for me.

Thanks, Abhishek
Vadym Stetsiak - 17 Oct 2007 08:47 GMT
Hello, Abhishek!

IMO the purpose of assembly signing is to remove the possibility to modify
the app by other people.
Since your application consists of many dlls - removing one dll means that
other dlls have to be rebuild and signed again.

A solutions can be an installer application that will do the patch thus
substitute all the dlls. Also an application has to be installed by the
installer.
Another way is not to signe application dlls (not applicable).
--
With best regards, Vadym Stetsiak.
Blog: http://vadmyst.blogspot.com

You wrote  on Wed, 17 Oct 2007 00:21:51 -0700:

A> Hi,

A> I am using .NET framework 2.0 and am facing a problem with assembly
A> versioning.

A> We have a many dlls which we ship as an application. Now all these
A> dlls are packaged and shipped as independent units. These dlls may or
A> may not depend on each other however 1 thing which is for sure is
A> that all the dlls depend on a common dll.

A> So to make it more clear the scenario is i have dll1, dll2,
A> dllCommon.
A> Now dll1 and dll2 depends on dllCommon. The AssemlblyVersionInfo we
A> have set for all these dlls is 1.5.*.* . Now with each build we build
A> dllCommmon, dll2 and dll1 in the same order.
A> Once we ship the application we may have to patch any 1 of these dlls
A> individually. However when we try to do that the things break because
A> of the way runtime probes the signed dlls. (We've all of them signed
A> by a key). So the problem now is that even if i have to patch
A> dllCommon i have to ship dll1 and dll2 as well which is definitely
A> not possible for us.
A> I am sure there's a solution out there however i am not able to find
A> it. Any comments/help would be great inputs for me.

A> Thanks, Abhishek
Abhishek - 17 Oct 2007 09:25 GMT
> Hello, Abhishek!
>
[quoted text clipped - 38 lines]
>
>  A> Thanks, Abhishek

Hi Vadyam

Definitely this is doable if i ship all the dlls however the issue
here is that all these dlls would be built by different team and a
subset would then shipped to customers depending on there
requirements.
Now we can't write a installer for each customer. Additionaly it is
logically incorrect to ship all the dlls if i have to patch only
dll1.

Any other ideas ?

~Abhishek
Abhishek - 17 Oct 2007 12:16 GMT
> > Hello, Abhishek!
>
[quoted text clipped - 52 lines]
>
> ~Abhishek

Okay one more input.
I read somewhere that binding policies might help here however i am
not sure how can i say in the binding policies that bind to any
version higher then what the assembly has been compiled against.

I couldn't find any example/ documentation on msdn for writing such a
policy.

~Abhishek

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.