Progress KB - Cannot add a new assembly to Developer Studio for OpenEdge




Feedback
Did this article resolve your question/issue?

   

Article

Cannot add a new assembly to Developer Studio for OpenEdge

« Go Back

Information

 
TitleCannot add a new assembly to Developer Studio for OpenEdge
URL Name000036394
Article Number000159724
EnvironmentProduct: OpenEdge
Version: 11.x
OS: Windows
Other: Progress Developer Studio for OpenEdge
Question/Problem Description
Attempting to use a third-party .NET assembly in Developer Studio but cannot to add it to Referenced Assemblies.

Attempting to use a third-party STPadLibNet.dll .NET assembly in Developer Studio but cannot to add it to Referenced Assemblies.

One of the following errors occurs:
 
Add Assembly References
The following library could not be loaded:
<path>\STPadLibNet.dll
 
Assembly Load Failure
The following assemblies failed to load and will not be added to assemblies.xml:
STPadLibNet, Version=8.0.26.0, 
Culture=neutral,PublicKeyToken=a0c5b3c72d40bbc6

Since the control has both visual and non-visual classes, it is possible to add the control to the toolbox and then to a form.
The form can be run and a property of the control displayed without errors. However, when the Project  is restarted, the assembly cannot be loaded again; forms is not visualized, etc.
 
Using PROASMREF.exe to add the assembly directly to assemblies.xml initially succeeds. However, the failure occurs when Developer Studio is loaded; the assembly then shows an error.

Per documentation for the control, creating PROASMREF.EXE.CONFIG with the appropriate entries has no effect.

PROWIN32.EXE.CONFIG already contains the useLegacyV2RuntimeActivationPolicy setting. 
 
Using the same assembly in OpenEdge Architect 10.2B works as expected.

Steps to Reproduce
Clarifying Information
According to the documentation for the control:
 
.NET 4.0
The .NET 2.0 runtime activation policy must be enabled in order to use the STPadLibNet.dll components in .NET 4.0 based projects. The 'app.config' file must be edited within the project as follows for this purpose:
 
<?xml version="1.0"?> 
<configuration> 
 <startup useLegacyV2RuntimeActivationPolicy="true"> 
  <supportedRuntime version="v4.0"/> 
 </startup> 
</configuration>
 
Error Message
Defect/Enhancement NumberDefect PSC00246846 / OE00223889
Cause
Eclipse JVM process (javaw.exe) also requires a .config file containing additional configuration information. 
Resolution
Manually add the missing configuration details, using the following steps:

1) Create new .config files: 

For OpenEdge 11.0, 11.1, 11.2:
 
<Install location>\DeveloperStudio3.X\jre\bin\javaw.exe.config 
<DLC>\jre\bin\javaw.exe.config 
<DLC>\bin\proasmref.exe.config 

For OpenEdge 11.3+,

<DLC>\jre\bin\javaw.exe.config 
<DLC>\bin\proasmref.exe.config 
2) Add the following entry to each .config file: 
 
<configuration> 
<runtime> 
<loadFromRemoteSources enabled="true" /> 
</runtime> 
<startup useLegacyV2RuntimeActivationPolicy="true"> 
<supportedRuntime version="v4.0"/> 
</startup> 
</configuration> 
 
3) Open <DLC>\bin\prowin32.exe.config in Notepad. Change this entry: 
 
<loadFromRemoteSources enabled="false" /> 
 
To "true", e.g.: 
 
<loadFromRemoteSources enabled="true" /> 
 
4) Restart Developer Studio for OpenEdge.

It should now be possible to add and use the STPadLibNet assembly as expected. 
Workaround

Notes
Last Modified Date9/13/2015 4:14 AM
Attachment 
Files
Disclaimer The origins of the information on this site may be internal or external to Progress Software Corporation (“Progress”). Progress Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.

Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on an "AS IS" basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation, the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if Progress has been advised of the possibility of such damages.