Salesforce

How to deploy a GUI for .NET project

Information

 
TitleHow to deploy a GUI for .NET project
URL NameP171242
Article Number000142557
EnvironmentProduct: OpenEdge
Version: 10.2x , 11.x
OS: Windows
Question/Problem Description
How to deploy a GUI for .NET project
What files are needed at runtime by a GUI for .NET application, and where should they be placed?
How to run a GUI for .NET application outside of the OpenEdge Architect development environment
How to deploy a GUI for .NET application to a Client Networking license
What files and assemblies are needed on the target machine when deploying an application containing UltraControls?
What files and assemblies are needed on the target machine when deploying an application containing Infragistics controls?
Steps to Reproduce
Clarifying Information
Error Message
Defect Number
Enhancement Number
Cause
Resolution
The following list the basic steps necessary to deploy a GUI for .NET application to a target machine running only one or more OpenEdge deployment licenses such as Client Networking. Additional steps or variations may be necessary depending on a particular application's features.

1. Verify that the startup or main routine of the application is a Procedure (.p) rather than a Class (.cls). 

Class files (and r-code compiled from them) cannot be run directly from the command line or started from a desktop icon. The startup procedure should then instantiate the class and run the instance, with code similar to the following:
 
DEFINE VARIABLE MyMainClassInstance AS MyMainClass NO-UNDO.

MyMainClassInstance = NEW MyMainClass().
WAIT-FOR System.Windows.Forms.Application:Run(MyMainClassInstance).

2. Verify the Microsoft .NET Framework is installed on the production machine.

.NET Framework 3.0 or higher is required; for the specific .NET Framework version required with your OpenEdge release, refer to:
OpenEdge Getting Started: Installation and Configuration, "Windows Installation Requirements > Required third-party applications"

During the OpenEdge installation process, if only deployment products are being installed a check box option is provided to install the .NET Framework if needed.
If OpenEdge has already been installed without the .NET Framework, the .NET Framework may be downloaded from the Progress Download Center or from Microsoft at http://msdn.microsoft.com/en-us/default.aspx.

3. OpenEdge 10.2B needs Service Pack 10.2B01 or later is applied. If it is not possible to apply a service pack, additional steps that are needed refer to Article 4. Verify that all databases, AppServers, or other Services needed by the application are installed and accessible.

5. Copy the following files from the OpenEdge Architect project directory (or other location) to the deployment directory structure of the target machine:
  • All .r code files
  • Any .resx files used
6. Copy the following files from the OpenEdge Architect project directory (or other location) to the deployment directory structure of the target machine or a separate assemblies directory.

When a separate assemblies directory is used, that directory must be specified at application startup with the -assemblies startup parameter.
  • Any assemblies referenced by the project that are not part of a product already installed on the target machine.
  • If source code files are being deployed, assemblies.xml This file will not exist if no external assemblies are used by the application. It is not necessary to deploy assemblies.xml if only r-code is being deployed.

7. If a startup icon is required on the target machine, create one as follows:
  • On the desktop, right-click and choose New > Shortcut.
  • Browse to <OpenEdge install directory>\bin\prowin32.exe. Click Next.
  • Type the name to display under the icon. Click Finish.
  • Right-click on the new icon and select Properties.
  • In the "Start in:" text box, type the full path of the working directory for the deployed application.
  • In the "Target:" text box, add any client startup parameters required. For example if the -assemblies startup parameter is needed it should be included here. If startup parameters are in a parameter file, include it here by adding: -pf <path to parameter file>
  • Click OK.
  • Once the startup icon has been created, it can be reused if the OpenEdge installation directory and application directory structure are in the same location on all target machines. The file will have the file name specified earlier and the file type ".lnk". Copy this file onto the desktop of each target machine instead of creating a new shortcut.
Workaround
Notes

References to Other Documentation:

OpenEdge Deployment: Managing ABL Applications, "Maintaining User Environments > Maintaining the Windows user environment"
OpenEdge Deployment: Managing ABL Applications, "Initial Deployment > Deploying OpenEdge GUI for .NET applications"
OpenEdge Deployment: Startup Command and Parameter Reference, "Startup Parameter Descriptions > Assemblies (-assemblies) startup parameter

Consultingwerk Blog: A few words on OpenEdge UltraControls and deployment…
http://blog.consultingwerk.de/consultingwerkblog/2011/07/a-few-words-on-openedge-ultracontrols-and-deployment%E2%80%A6/

Progress Articles:

 How does the Progress client handle .NET assembly loading

Keyword Phrase
Last Modified Date11/20/2020 7:19 AM

Powered by