Chris, thanks for your reply. I will try to answer your questions and explain myself better below:
Say that I have an existing native COBOL program named TEST1 and from it I want to CALL or INVOKE a new program named TEST4. And TEST4 will be the type described below. Assume both executables will be in the same directory.
When I go into VS and say I want to create a new project and I then highlight Managed in the [Project Type] pane on the left and Console Application in the [template] pane in the middle. Then after it creates the new project (say TEST4), I go to Properties and change the Output type from Console Application to Class Library so that it will create a DLL instead of an EXE. I do this because I am under the impression that you can't really directly CALL or INVOKE an EXE from another COBOL program, it has to be a DLL if you are going to CALL it or INVOKE it. If I am wrong on this, please let me know.
The resulting "program" is not a class - it is a procedural program with some version of the Net Framework as the Target framework. The skeleton "Program1" code that it creates is a simple procedural type and not a class.
However, I can't seem to simply / directly CALL this "Managed Console" program (changed properties to a DLL) from a Native COBOL program like I would CALL a Native program (DLL) from a Native COBOL program. It falls through the CALL and doesn't even give me an exception.
I know that I can treat this situation similar to a situation where I wanted a Native COBOL program to INVOKE a Managed Windows Forms Application (which I changed the Output type to Class Library). In other words, create and bolt a Class1 onto this new program and follow the steps similar to the CCW / Com Interop examples. And then once in Class1, I would CALL "TEST4.Program1" since it was procedural. This works, although using the AssemblyName.ProgramName in the CALL is a bit new and strange.
Seems like I should be able to just simply and directly "CALL TEST4" in/from TEST1.
Clear as mud?
Thanks