/ Optimization Services Series
for CA Gen /
/ CA® Gen
Windows Runtime Infrastructure
Technical Paper

CA Gen 8.5


GUI Client & COM Proxy
Application Deployment

July 7, 2016

This technical paper is developed to assist in the manual deployment of CA Gen 8.5 GUI client applications on Windows. In addition, it also documents the deployment requirements for COM Proxy applications.

© 2007 CA, Inc. All other trademarks, trade names, service marks, and logos referenced herein belong to their respective companies.
This document is for your informational purposes only. To the extent permitted by applicable law, CA provides this document “AS IS” without warranty of any kind, including, without limitation, any implied warranties of merchantability, fitness for a particular purpose, or noninfringement. In no event will CA be liable for any loss or damage, direct or indirect, from the use of this document, including, without limitation, lost profits, business interruption, goodwill or lost data, even if CA is expressly advised of such damages.

8/07/2016 GUI Client Application Deployment – Version 1.0 2/9

/ CA Gen /

Applicability Notice

This document is written in response to specific customer issues. The content is to be taken “as-is” and might not be applicable to every situation. The content evolves and is constantly refined upon new insights. When in doubt about the applicability in your specific situation, please contact CA Gen Customer Support. Also, always check whether this is the latest version of the document available.

Document History

Ver. / Status / Document ID / Who / Date / Changes, Actions
1.0 / AH / 8/6/2013 / Adapted from Gen r8 document
1.1 / AH / 2/26/2014 / Removed tiodbc80n.dll from GUI Client Runtime
1.2 / AH / 12/10/2014 / -Include VS2012
-Include vwrt85n.dll in GUI Runtime
1.3 / AH / 5/12/2015 / Include iefabrt85n.dll and iefabex85n.dll in GUI Runtime
1.4 / AH / 10/23/2015 / -Include vwrt85n.dll and xerces-c_3_1.dll in the COM Proxy Runtime
-Clarify the “Copy the COM Proxy application files” comments
1.5 / AH / 7/7/2016 / -Removed references to Java classes\*.* in several locations

Acknowledgements

This document is adapted from the similar document that exists for CA Gen r8.

References

The following references are consulted in the development of this document:

·  [TECHREQ] CA Gen - Technical Requirements – 8.5

·  [MSDN] Visual C++ Deployment (C++), http://www.microsoft.com/en-us/download/details.aspx?id=5555 and Download Visual C++ Redistributable for Visual Studio 2012 Update 4 from Official Microsoft Download Center

·  [DPPROX] CA Gen - Distributed Processing Proxy User Guide – 8.5, CA Gen Documentation

Figures

No figures in document.

© 2014 CA, Inc. All other trademarks, trade names, service marks, and logos referenced herein belong to their respective companies.
This document is for your informational purposes only. To the extent permitted by applicable law, CA provides this document “AS IS” without warranty of any kind, including, without limitation, any implied warranties of merchantability, fitness for a particular purpose, or non-infringement. In no event will CA be liable for any loss or damage, direct or indirect, from the use of this document, including, without limitation, lost profits, business interruption, goodwill or lost data, even if CA is expressly advised of such damages.

7/7/2015 GUI Client & COM Proxy Deployment 2/10

/ CA Gen /

Contents

Applicability Notice 2

Document History 2

Acknowledgements 2

References 2

Figures 2

Contents 3

Introduction 4

Support Files 5

Redistribute the VC++ runtime files to the target system 5

Copy these CA Gen support files to the deployment directory 5

Communications Middleware (if applicable) 6

DB Connectivity (if applicable) 6

Client Manager command line 6

GUI Client Application Files 8

Copy the GUI Client application files 8

Register the GUI Client application file 8

OCX / OLE Files 8

Support Application Files 8

COM Proxy Application Files 9

Copy the COM Proxy application files 9

Register the COM Proxy application files 9

Special considerations 10

Deployment on Windows Server 2003/2008 with Terminal Services Manager 10

Introduction

This document was developed to assist in the deployment of CA Gen 8.5 GUI Client applications and CA Gen 8.5 COM Proxy applications on Windows 7, Windows 2008, Windows 8.1 and Windows 2012. Deployment is the process in which an application, built on a workstation using the CA Gen 8.5 toolset, is moved to another workstation on which the CA Gen 8.5 toolset is not installed. In order to accomplish this deployment, CA Gen and Microsoft runtime files need to be moved to the deployment workstation and the registry on the deployment workstation needs to be updated.

NOTE 1: CA Gen 8.5 generated GUI Client and COM Proxy applications are only supported and certified on Windows 7 32 bit and 64 bit, Windows 2008 32bit, Windows 2008 R2 64 bit,

Windows 8.1 32 bit and 64 bit, and Windows 2012 R2 64 bit.

NOTE 2: The CA Gen 8.5 build tool offers the possibility to assemble a generated GUI Client application and optionally the CA Gen 8.5 GUI runtime into an installation package (MSI file). This would be the recommended deployment procedure (not available for deploying COM Proxy applications). Alternatively one could also use the CA Gen 8.5 Installation CD to install the required application runtimes and middleware runtimes. We recognize this may not be practical for a large number of workstations and thus the following describes a manual procedure. This procedure mirrors the Installation CD by listing the same files installed by the CD.

NOTE 3: This document describes the technical issues of deploying a CA Gen generated application to a “blank” system. It does not cover any licensing and/or contractual issues. At time of writing it is not necessary to deploy any licensing related files in order to get a CA Gen generated application running on a “blank” system.

NOTE 4: The Gen Technical Requirements on support.ca.com will have the latest information regarding the versions of Windows that are supported.

Support Files

The support files require one deployment per workstation. Some files are listed in multiple packages depending on the options installed.

Redistribute the VC++ runtime files to the target system

Run vcredist_x86.exe on the target computer to install all Visual C++ libraries as shared assemblies. On a target computer with support for manifest-based binding of applications to their dependencies, the libraries are installed in the WinSxS folder. CA Gen 8.5 applications are dependent on following non-standard operating system DLLs:

For Microsoft Visual Studio 2010:

MFC100ENU.DLL / MFC100.DLL / MSVCP100.DLL
MSVCR100.DLL

For Microsoft Visual Studio 2012:

MFC110ENU.DLL / MFC110.DLL / MSVCP110.DLL
MSVCR110.DLL

Procedure:

For Microsoft Visual Studio 2010, copy Visual C++ Redistributable Package (vcredist_x86.exe) from C:\Program Files(x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\vcredist_x86 to the target computer.

Run vcredist_x86.exe

OR

For Microsoft Visual Studio 2012, download the Visual C++ Redistributable Package (vcredist_x86.exe) from Download Visual C++ Redistributable for Visual Studio 2012 Update 4 from Official Microsoft Download Center to the target computer.

Run vcredist_x86.exe

Copy these CA Gen support files to the deployment directory

Include the deployment directory in the PATH environment variable of the target computer! This step is optional: its necessity would depend on the specific application start up scenario.

Source directory:

·  For Microsoft Visual Studio 2010, <CA Gen install directory>\GEN\VS100

·  For Microsoft Visual Studio 2012, <CA Gen install directory>\GEN\VS110

NOTE: PTF WKS85001 (superceded by WKS85003) must be applied for the VS110 directory to exist.

Target files:

GUI Client Runtime (without trace):

cfbmo85n.dll / cmcf85n.dll (CM) / cmicx85n.dll (CM)
csu85n.dll / csumg85n.dll / csuvn85n.dll
iefdprt85n.dll / iefmbt85n.dll / iefutl85n.dll
reqtok85n.dll / vwrt85n.dll / wrc850n.dll
wre850n.dll / wrf850n.dll / wrg850n.dll
wrgui850n.dll / wru850n.dll
codepage.ini / commcfg.ini / guienvironmentvariables.ini
iefabrt85n.dll / iefabex85n.dll

NOTE:

·  Some of these files might be optional depending on the application and/or deployment architecture chosen, e.g. COMMCFG.INI, GUIEnvironmentVariables.INI, etc.

·  The DLLs iefabrt85n.dll and iefabex85n.dll are optional if the CALL EXTERNAL statement for Web Service Consumption has not been used.

GUI Client DB Access via ODBC (if applicable):

tiodbc85n.dll

COM Proxy Runtime:

cprt85n.dll / csu85n.dll / csumg85n.dll
csuvn85n.dll / iefdprt85n.dll / iefmbt85n.dll
iefutl85n.dll / prex85n.dll / reqtok85n.dll
vwrt85n.dll / xerces-c_3_1.dll (XML option) / codepage.ini
commcfg.ini

COMMCFG.INI might be optional depending on the transaction routing mechanism chosen.

TCP/IP Runtime:

cfbmo85n.dll / tcp*.dll

MQ Series Runtime:

cfbmo85n.dll / mq*.dll

ECI Runtime:

cfbmo85n.dll / eci*.dll

Tuxedo Runtime:

tx*.dll

Client Manager Runtime:

This section assumes you have already run the Client Manager successfully and answered Client Manager Customization selecting the CM message text language and whether to allow the ability to save User ID and password in configuration files.

brows85n.exe / cfbmo85n.dll / cide85n.dll
cif85n.dll / cmcf85n.dll / cmicx85n.dll
csu85n.dll / csumg85n.dll / csuvn85n.dll
decre85n.dll / iefcm85n.chm / iefcm85n.dll
iefcm85n.exe / iefcrypto85n.dll / iefdprt85n.dll
iefmbt85n.dll / iefutl85n.dll / io6285n.dll
iorsc85n.dll / iotcp85n.dll / olepro32.dll
reqtok85n.dll / vwrt85n.dll / wrc850n.dll
wre850n.dll / wrf850n.dll / wrg850n.dll
wrgui850n.dll / application.ini / codepage.ini
commcfg.ini / guienvironmentvariables.ini / Gen85\Gen\commrt\*.*

Client Manager command line

To start up the Client Manager you have to enter the below command line. This can be done from a DOS window or alternatively this can become the Target line of a shortcut you create for the Client Manager (IEFCM85N.EXE):

<Deployment Directory>\iefcm85n.exe iefcm startup /initfile=iefcmn.ini

CAUTION: There must be at least one space between ‘startup’ and ‘/initfile’!

Communications Middleware (if applicable)

The client software from the communications middleware vendor must be installed for connectivity to the server.

DB Connectivity (if applicable)

The client software for database connections from the DB vendor must be installed for GUI Clients with database access.

GUI Client Application Files

Each GUI Client application requires one deployment per workstation.

Copy the GUI Client application files

Copy the following from the <model>.ief\c directory to the deployment directory.

Target files:

application.ini / Optional
<loadmodulename>.EXE / only for the starting loadmodules
<loadmodulename>.DLL / ß all DLLs
<RI trigger>.DLL / e.g. CASCADE.DLL
<loadmodulename>.CHM / only if you are using the help files
<loadmodulename>.REG / only if you want the GUI Client application being used as an OLE automation server

Include the deployment directory in the PATH environment variable of the target computer! Whether or not this is necessary depends on specific application start up scenarios.

Register the GUI Client application file

This is only necessary if you want to use the GUI client application as an OLE automation server.

<loadmodulename>.REG is an ASCII file containing location information for the GUI Client application. It contains path names that must be changed to indicate the current directory in which the application is deployed. (if the application was deployed to C:\MYAPP then the path names should be changed to C:\MYAPP).

If your deployment included this file, make these changes, then register it with the following command:

regedit.exe <loadmodulename>.reg

OCX / OLE Files

All OCX controls and OLE servers used in the GUI Client application have to be installed on the target Workstation. Each requires one deployment per workstation. Refer to the installation instructions from the OCX supplier.

Support Application Files

Any applications that have been used to create the contents of an OLE AREA must be installed on the deployment target to get in-place or out-of-place activation. For example, if an Excel spread sheet is placed in an OLE AREA on a window, then Excel would have to be installed on the deployment target to activate and edit the OLE AREA contents.

COM Proxy Application Files

Each COM Proxy application requires one deployment per workstation.

Copy the COM Proxy application files

Copy from the <model>.ief\proxy\com\deploy\<loadmodulename> directory to the deployment directory

Target files:

<loadmodulename>AX.DLL
<loadmodulename>CM.DLL

If the COM Proxy Application files are deployed in a directory also containing the COM Proxy Runtime files, there’s no need to include this directory in the System PATH. But, the location of the COMMCFG.INI needs to be resolved, so putting it in the directory with the Application and Runtime files, and including that directory in the System PATH, is the easiest and safest option.

Register the COM Proxy application files

COM Proxy application files need to be registered with the following command:

regsvr32.exe <loadmodulename>AX.DLL

regsvr32.exe <loadmodulename>CM.DLL

NOTE: To register these 32-bit DLLs on a 64-bit Windows machine, use the 32-bit regsvr32 version of the command, \Windows\syswow64\regsvr32.

\Windows\syswow64\regsvr32.exe <loadmodulename>AX.DLL

\Windows\syswow64\regsvr32.exe <loadmodulename>CM.DLL

Special considerations

Deployment on Windows Server 2003/2008 with Terminal Services Manager

When there’s a heavy load on the terminal server, i.e. multiple concurrent users of the CA Gen generated application, then “sharing violation” errors can occur on the GUIEnvironmentVariables.ini file. This is probably due to the (Microsoft) implementation of the GetPrivateProfileString() API function. Bug reports can be found on //msdn.microsoft.com which suggests this.

Recommended work-around to avoid these “Sharing Violation” errors would be to make the GUIEnvironmentVariables.ini file read-only.

7/7/2015 GUI Client & COM Proxy Deployment 4/10