You can deploy a WinForms EXE to another PC by giving him a URL for
the .EXE. This is called a Smart Client Application.
- A SmartClient app is basically a Windows Forms app that is deployed
over the web (zero-touch deployment). These applications have full
Windows GUI functionality.
- The user must have the .NET Framework v1.1 on their computer
- The app is downloaded into a "security sandbox" on the user's
computer. The app can NOT read or write to local files within the
normal filesystem, and they can't read or write to/from the registry.
- The app can contact the same internet site where it was downloaded
from in 2 ways: it can call Web Services at that site, and it can open
sockets to that site.
- The app can store data locally in a protected area on the hard disk
(called "Isolated Storage")
- The app can function in a fully "disconnected" manner. Once
downloaded (by clicking on the URL), the program stays in the
"Temporary Internet Files" area of the disk. The user can start the
program when the Internet is down by using "File..Work Offline" in IE.
Then they can give the URL, and it will be loaded from their local
disk. They can read/write to their local protected diskspace. Later
when the Internet comes back online, they can synchronize with a Web
Service or socket.
- if you want the program to have more permissions so it can get out
of the sandbox in a controlled manner, you can create a security
policy for the client's computer. This can be stored in an ".msi"
setup file, that the user can execute over the web by pointing to a
URL. This is called "one touch deployment", because the user has to
execute an .msi file before he can run the program.