Description:
One of our projects will require no-touch deployment from a Web Server. I have tested this scenario and get a SecurityException when I try to launch the application.
Answer:
We have investigated Web deployment scenarios and found two interesting articles in the MSDN Library:
Configuring Internet Explorer Applications
Configuring a Client Application
To sum them up: it is necessary to configure both the server and client machines. A client cannot launch an application until his domain or machine administrator permits it.
Configuring the server
- Create a virtual directory for your application in the IIS (Control Panel | Administrative Tools | Internet Information Services).
- Put the DevExpress.~ runtime assemblies into your application's folder.
- Create the configuration file with the AssemblyBinding, DependentAssembly, and CodeBase tags. The DependentAssembly tag must identify an assembly by its name, version and public key token. The CodeBase tag must provide an URL for an assembly. A sample configuration file is attached to this article.
Configuring a client system
The Developer Express assemblies are compiled without the AllowPartiallyTrustedCallers attribute. Therefore, the Full Trust permission set is required. To configure a client system, the client's administrator should grant the Full Trust permissions to your application. They can use the .NET Framework Configuration console (Control Panel | Administrative Tools | Microsoft .NET Framework Configuration 1.1.) or the caspol.exe command line tool to do this.
See Also:
A tool for collecting the required DevExpress assemblies for further application deployment
ClickOnce application deployment with DevExpress .NET WinForms controls
How to distribute applications that use DevExpress .NET Windows Forms controls
MSDN: No-Touch Deployment in the .NET Framework
MSDN: Deploying Assemblies