我已经完成了所有的搜索,但找不到解决这个困扰我大约 5 个小时的奇怪问题的方法。我在 Lazarus 中启动了这个应用程序,然后把它带到了 D5pro 上,看看我是否能解决这个问题。认为这可能是拉撒路的“东西”。
在 D5 中,我有一个可以正常运行的应用程序(到目前为止一切正常),我决定尝试一些不同的外观和感觉方法,因此我将“项目另存为”到一个新文件夹中。然后我浏览了所有包含的单元并将它们保存到新文件夹中。我将两个 OpenSSL .DLL 复制到新文件夹中。进行了编译并运行,一切正常。嗯,差不多。
当我尝试新应用程序时,POP3 单元在“登录”时崩溃
我已经逐步完成,所有基本的登录内容、服务器、名称、SSL 参数等都与以前的版本相同。
我回到原来的应用程序并做了一个完整的构建,它仍然运行良好。我在新应用程序上做了一个完整的构建,它仍然在登录时崩溃。
它通过 pop3.Sock.SSLDoConnect() OK,但从 pop3.Login() 返回错误 10061,根据 BlckSock Synapse-Unit,这意味着“连接被拒绝”。
当它从此调用返回时 Result:=ssConnect(s, @name, SizeOfVarSin(name)); 我假设在.DLL中它的结果为-1,然后触发GetLastError,即“10061 - 连接被拒绝”
据我所知,这两个项目之间的一切都是相同的。所有库路径都在环境中,而不是在项目中。
有什么想法和建议吗?