Estimados adjunto las lineas finales de la llamada
Mi problema era que definía mal las variables NUMX ya que no conocía/entendía/etc la declaración BINARY-SHORT / BINARY-LONG
Código COBOL:
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 FUNC PIC X(20).
01 ReturnValue PIC S9(04) COMP-5.
77 NUM1 USAGE BINARY-SHORT SIGNED. *> Variable Short la rutina programada en "C"
77 NUM2 USAGE BINARY-SHORT SIGNED.
77 NUM3 USAGE BINARY-LONG SIGNED. *> Variable Long la rutina programada en "C"
77 NUM4 USAGE BINARY-LONG SIGNED.
77 NUM5 USAGE BINARY-SHORT SIGNED.
PROCEDURE DIVISION.
MOVE "mluser" TO FUNC
MOVE 1 TO NUM1
MOVE 1 TO NUM2
MOVE 1000 TO NUM3
MOVE -1800027647 TO NUM4
MOVE 0 TO NUM5
MOVE ZEROS TO ReturnValue
CALL FUNC WITH STDCALL LINKAGE
USING BY VALUE NUM1
BY VALUE NUM2
BY VALUE NUM3
BY VALUE NUM4
BY VALUE NUM5
RETURNING ReturnValue
END-CALL
IF ReturnValue = ZEROS Display "Correcto"
ELSE Display "Error Numero: " ReturnValue
END-IF
El Archivo COBOL85.CBR
Código COBOL:
[F-009001.Entry] <--- Nombre del Form que llama la Dll Exterma -> F-090001
mluser=MLUSERXX.DLL <--- La Dll externa se llama -> MLUSERXX.DLL
FtpConnect=MLUSERXX.dll <---
FtpDisconnect=MLUSERXX.dll <---
LogIn=Protocol.dll
Tal cual lo describio KUK en el inicio del post
Saludos y Gracias Por Estar Alli !!!!