How make non-web app work on Local area network

W

Woody Splawn

I have a non-web (winforms) VS dot net application that I have written using
SQL Server 2000 as the back-end. This was done on a local area network with
a dedicated file server. SQL Server 2000 resides on the file server and a
full blown version of VS.net is on a client machine of the server. My
solution resides on the local C drive. At this point in time I suppose I am
doing what you would call a client/server type application in a two tier
architecture. Is this Correct?

So far so good. My applicaiton runs and works fine. However, I would like
the application to be accessable to other machines on the network. The
other machines all run Windows XP and have the dot net framework. My
question has to do with the best way to do this.

I suppose from the original machine I could create an .msi file, copy it to
each of the other machines on the network and run it but this seems tidious.

Another thought that comes to me is that instead of creating the solution on
the local drive of the design machine, maybe I should create it on a shared
drive of the server. Perhaps then I could compile to release mode and the
other client machines could simply access the .exe that release mode
creates. Is this possible and the way you do things in dot net or do I have
it wrong? My guess is that at this point I would effectively have a 3-tier
solution its just that the middle tier and the data tier would be considered
as residing on the same machine - i.e., the file server.

Any clarification would be appreciated.
 
S

Scott Allen

Investigate the "HREF EXE" style of deployment. No shared drives, no
msi files to deploy:

Security and Versioning Models in the Windows Forms Engine Help You
Create and Deploy Smart Clients
http://msdn.microsoft.com/library/default.asp?url=/msdnmag/issues/02/07/NetSmartClients/toc.asp

You might need to tweak some security settings, but the tweaking could
be a one time msi push in an intranet scenario. It's not what I'd
typically consider a 3-tier architecture though.

HTH.
 
W

Woody Splawn

Scott,

Thank you for your response. I'm sorry but this method will not work
for me. Do you or does someone else have an answer to my original question
with regard to the easiest way to deploy a non-web application on a local
area network? Original message follows:
 
V

Val Mazur

Hi Woody,

Placing of the application on a shared drive will work for sure and this is
probably the preferable way, rather than installing application on each PC.
But in a case if .NET application resides on a network drive, you would need
to adjust security settings for the .NET Framework on each PC to allow to
run your application from the Intranet
 
W

Woody Splawn

Is there any reason why it won't just run from a mapped drive or a UNC

Rick,

I'm sorry, I don't understand what you mean by a UNC share. Do you mean
a directory on a shared drive like on the file server?
 
W

Woody Splawn

Val,

I appreciate a response from MS. Thank you. Please bear with me. In
the tool I was using prior to VB.net I would create the application (the
equivalent of a solution) on the local drive of a client on the network,
then I would compile it. When compiled the application created certain
DLL's and an exe file which I then copied to a shared drive on the server.
All other clients were then able to access the application by running the
..exe just mentioned.

Is it possible to do things in a similar fashion here? The advantage of
having the application on a local hard drive is that the code etc is not
available for everyone else to see. If this is not what VB.net considers
orthodox then fine, I have learned the hard way to do it the way the tool
you're working with thinks is orthodox. The main thing is that I would like
to avoid running an .msi from each client whenever there is a change.

It is not clear to me just how good a tool VB.net is for non-web solutions.
I mean I know it is robust, but frankly it tends to make a federal case out
of everything. This question is so fundamental I would guess there would be
a white paper or other documentation somewhere.

Thank you again for your help.

P.S. What specifically do I need to do to adjust the security settings for
the .NET framework to allow the app to run from the network drive?
 
V

Val Mazur

Hi Woody,

I am not from MS, I just have a status of MS MVP. Anyway. With VB.NET it is
even simpler to locate application on a network shared drive, because if
your .NET application does not use any COM based components, then you do not
need to register any .NET compiled DLL files, as it was with the COM DLLs.
Basically you avoid DLL hell in this case. All you need to do is copy and
paste your application from your drive into shared folder. But all the
clients have to have .NET Framework installed on their PCs to be able to run
any .NET application
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top