DLL-библиотека, написанная на Delphi, загружаемая приложением Powerbuilder, которая выполняет любые сетевые коммуникации, которые она может выполнять, не будет существовать, если приложение Powerbuilder действительно завершит работу.
В Windows невозможно, чтобы что-то могло поддерживать ваш процесс после его завершения Powerbuilder, если только эта вещь не является потоком внутри DLL-библиотеки delphi, созданной DLL-библиотекой delphi.
Я бы посоветовал вам отслеживать потоки, существующие в вашем приложении, с помощью отладчика delphi. Вы можете запустить свое приложение powerbuilder из среды разработки Delphi, открыв свой проект delphi (который используется для сборки DLL) и установив параметры запуска проекта, чтобы запускаемое приложение powerbuilder, которое загружает DLL, было «исполняемым файлом» в диалоговое окно RUn -> параметры в IDE Delphi.
Теперь запустите все это в режиме отладки (зеленая кнопка со стрелкой на панели инструментов Delphi IDE), откройте панель «Потоки» и посмотрите, какие потоки запускаются в приложении Delphi. Если нет никаких дополнительных потоков, запущенных DLL-библиотекой delphi (скажем, основной поток powerbuilder - единственный поток, который вы можете видеть), то DLL-библиотека Delphi не сможет держать ваше приложение открытым.
На самом деле, наиболее вероятно, что ваша программа зависает (зависает) из-за какой-то основной проблемы в powerbuilder или DLL. Опять же, решение проблемы, вероятно, потребует от вас некоторой отладки, как с помощью powerbuilder, так и delphi. больше информации поможет людям помочь вам.