繁体   English   中英

PowerBuilder应用程序调用Delphi DLL

[英]PowerBuilder application call the Delphi DLL

我使用PB调用了Delphi DLL(多线程套接字dll)文件,当PB应用程序窗体关闭时,它并没有真正终止,并且仍然留在任务管理器中!!! 为什么? powerbuilder应用程序终止后如何释放多线程套接字DLL? 预先感谢您的答复!

如果Powerbuilder应用程序确实终止,则由Powerbuilder应用程序加载的用Delphi编写的dll会执行其可能进行的任何网络通信,而该dll仍然不会存在。

在Windows中,除非Powerbuilder终止了该进程,否则不可能有任何东西使您的进程保持活动状态,除非该进程是delphi DLL创建的delphi DLL中的线程。

我建议您使用delphi调试器监视应用程序中存在的线程。 您可以从delphi IDE中启动powerbuilder应用程序,方法是打开delphi项目(用于构建DLL)并设置“项目运行选项”,以便在运行时加载DLL的powerbuilder应用程序是“可执行文件”。 Delphi IDE中的RUn-> parameters对话框。

现在,在调试中运行整个程序(delphi IDE工具栏中的绿色箭头按钮)并打开“线程”面板,并观察在delphi应用程序中启动的线程。 如果delphi DLL没有启动任何额外的线程(例如,powerbuilder主线程是您可以看到的唯一线程),则Delphi DLL可能无法保持您的应用程序处于打开状态。

事实是,由于powerbuilder或DLL中的一些基本问题,最有可能发生的事情是程序冻结(崩溃)。 同样,解决问题可能需要您使用powerbuilder和delphi进行一些调试。 更多信息将帮助人们为您提供帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM