> doug chanco wrote:
> > Is it possible to just put the uniobjects dll on a system without
> > installing it?  I am working on a "home" project where I have an
> > android app call a web service to get UV data from my linux
> >
> > I have a hosted system running windows server and I am working on
>> a c# web service that will receive data and pass it to  a
subroutine (via
> > uniobjects) on my linux box. 

> From: Jeff Schasny 
> The .dll does not need to be installed. Visual Studio will include
it in the
> installation package for your C# application after you add it to the
> project.

Errr, that's only if you tell it to. When you reference a DLL it
doesn't automatically copy the DLL into your bin path because that can
make for huge deployment packages when the target client already has
some DLLs. If you know you want to copy the DLL, click on it then look
at properties and you'll see the option to copy.

Now, sometimes you may not want to do that. Let's say you have UO vX.Y
and it works a treat on your system with your configuration against
your version of UV or UD. So you do your clients a favor and bundle
your UO with your app. But then you get calls that "UO works fine here
but your app doesn't work". What's happening there is that they might
be using a different version that works for them but your version
doesn't work. If you just provide a reference, your app will use their
UO and everything will be great.

But you often don't know if they have UO or not. For a given app and
audience you have a pretty good idea so you can decide whether or not
to do that Copy deployment.

Another issue is with versioning. While the .NET Framework was
designed to allow multiple versions of the same DLL to co-exist in
harmony, most .NET developers don't code to make use of that. So let's
say you do bundle the UO DLL with your package. Be careful about
moving that to a general location or using the GAC because you could
be over-writing a DLL that works for your client with your older or
newer version.

I apologize that I haven't played with the UO / UO.NET DLLs for a
while but I had these exact issues with them until we worked out which
version work in specific environments. I wrote an applet that detects
and identifies the version of UO on a system, and tells you if it can
make a good connection. This helped to resolve the issue with "why
isn't it working?" or "why is my UO broken after this app was
installed?" "which version do you have?" "I don't know I might not
even have it installed..."

Anyway, the answer isn't quite That cut n dried...

BTW, Doug, I think you're using the right approach, going from Android
to a middle tier and then doing a proxy to Universe/Linux. Too many
people approach this as "how do I connect from Android to UV/Linux?".
The answer is that you don't need to and frequently don't want to.

Coming back to the original question for a moment, I think Doug might
have wanted to know if you need to install the Client Library on a
client PC just to get the UO DLL. The answer is no, you don't need
that 110MB+ installer just for the one tiny DLL, and the licensing
permits the DLL to be deployed with your solution.

Tony Gravagno   
Nebula Research and Development         
TG@ remove.pleaseNebula-RnD.com         
Nebula R&D sells mv.NET and other Pick/MultiValue products      
worldwide, and provides related development services    
Visit http://PickWiki.com! Contribute!          

U2-Users mailing list

Reply via email to