Qt使用https请求报错QSslSocket::connectToHostEncrypted: TLS initialization failed,libcrypto-1_1.dll和libssl-1_1.dll都有,在开发环境中正常,在干净的系统中用不了,排除了openssl库的问题,是缺少其他依赖库导致的
使用Dependency Walker看少什么依赖库看不出个所以然,在干净系统上装了Tim就正常了,大概率是缺少VC运行库,装Tim把缺少的运行库给装上了就正常了
而我程序本身安装时会装上2015、2017、2019的运行库,那可能是少了更低版本的运行库
经过测试发现是缺少了2010的运行库,可以在Qt安装目录下找到2010的运行库,比如我的位置为 Qt\Qt5.12.9\vcredist
根据自己的程序是32位还是64位进行选择,而不是根据系统位数进行选择,装上2010的运行库后就OK啦
Dey alkeDepenncy WalkerrpDependency Walkerendency