S
Scanner2001
This may not be the best group to post to, so if there are any
suggestions as to a different group, please let me know.
Here is what we are doing, we have a couple of dlls that are shared
(i.e. used by a number of other dlls and applications). These dlls have
their own setup process, built with VS2003 setup and deployment package.
They are strongly named and have keys. We specify to deploy to the GAC only
on the target production server.
The problem comes when app1.exe want to use shared1.dll. On the
development machine, the shared1.dll is deployed to the GAC and to the
Microsoft.NET\Framework\v1.1.4322 folder so that it can be referenced from
the add reference dialog in the VS IDE. When the setup and deployment
package is built for the app1.exe, it includes the shared1.dll. I do not
want to do this, I think. The problem this poses is that any application
that uses the shared dll will have to deploy its own copy of the
shared1.dll. This seems like application isolation to the extreme. On the
other hand, I do not want to deploy the shared dlls to single folder,
because this is no different than the c:\winnt\system32 dll folder, also
causing problems.
What I thought I could do is deploy the shared1.dll on its own to the
target machine, then let .Net pick this up from the GAC.
So, 2 issues.
1 is how to remove the shared dll dependency from the app1.exe deployment
package, possibly working like the launch condition for the .Net framework.
2 is how to force each application to use the most recent/appropriate shared
dll on the target server, as specified from the GAC deployment of the shared
dll.
Thanks,
J
suggestions as to a different group, please let me know.
Here is what we are doing, we have a couple of dlls that are shared
(i.e. used by a number of other dlls and applications). These dlls have
their own setup process, built with VS2003 setup and deployment package.
They are strongly named and have keys. We specify to deploy to the GAC only
on the target production server.
The problem comes when app1.exe want to use shared1.dll. On the
development machine, the shared1.dll is deployed to the GAC and to the
Microsoft.NET\Framework\v1.1.4322 folder so that it can be referenced from
the add reference dialog in the VS IDE. When the setup and deployment
package is built for the app1.exe, it includes the shared1.dll. I do not
want to do this, I think. The problem this poses is that any application
that uses the shared dll will have to deploy its own copy of the
shared1.dll. This seems like application isolation to the extreme. On the
other hand, I do not want to deploy the shared dlls to single folder,
because this is no different than the c:\winnt\system32 dll folder, also
causing problems.
What I thought I could do is deploy the shared1.dll on its own to the
target machine, then let .Net pick this up from the GAC.
So, 2 issues.
1 is how to remove the shared dll dependency from the app1.exe deployment
package, possibly working like the launch condition for the .Net framework.
2 is how to force each application to use the most recent/appropriate shared
dll on the target server, as specified from the GAC deployment of the shared
dll.
Thanks,
J