我一直在处理 Progress 4GL 程序和从共享库调用的 C 函数之间的一些交互。
我需要编写一个新函数并将其添加到 SL,所以我的问题是:
Progress 可以接收从 SL C 函数返回的值吗?
就像是 :
Progress_data_type var = SLInvoked_function(...);
如果这是可能的,有人可以指出正确的语法或参考手册吗?
我一直在处理 Progress 4GL 程序和从共享库调用的 C 函数之间的一些交互。
我需要编写一个新函数并将其添加到 SL,所以我的问题是:
Progress 可以接收从 SL C 函数返回的值吗?
就像是 :
Progress_data_type var = SLInvoked_function(...);
如果这是可能的,有人可以指出正确的语法或参考手册吗?
以下代码显示了调用 putenv() 的示例。返回值的关键是“定义返回参数”行。
define variable x as integer no-undo.
procedure putenv external "/lib64/libc.so.6":
define input parameter env as character.
define return parameter x as long.
end.
display os-getenv( "XYZZY" ).
pause.
run putenv( "XYZZY=pflugh", output x ).
display os-getenv( "XYZZY" ).
os-command value( 'echo "$XYZZY"' ).
return.
有关更多详细信息,请查看UNIX 共享库