0
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-LONGCOBOL Código:
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.CBRCOBOL Código:
[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 !!!!
Marcadores