0

我从这里下载并安装了驱动程序设置文件 DB2OLEDB.exe:

http://download.microsoft.com/mwg-internal/de5fs23hu73ds/progress?id=HYLbKUfGNl

使用在另一台 PC 上工作的连接字符串,我尝试在 SSIS 包中创建连接对象。当我测试连接时,我收到了这个错误:

Test connection failed because of an error in initializing provider. A TCPIP socket error has occurred (10057): A request to send or receive data was disallowed because the socket is not connected and (when sending on a datagram socket using a sendto call) no address was supplied.

有关此错误的原因是什么以及如何解决此问题的任何建议?

顺便说一句,当我使用 DB2 配置设置实用程序并从其中测试连接时,我能够成功连接。

我还能提供哪些其他信息来帮助您回答这个问题?

谢谢

这可能与阻塞的端口有关吗?

4

2 回答 2

0

做一些研究,我发现了两种可能的修复方法。

第一个链接建议在 EndAccept 逻辑完成后调用 BeginReceive。您是在使用脚本代码,还是只使用 GUI 而没有任何脚本?

TCP 异步套接字抛出 10057



第二个链接指向 PC 上的驱动程序/软件。可能是您缺少 Windows 更新或硬件/驱动程序有问题。

我认为这种情况不太可能发生,因为您可以使用相同的连接字符串(?)连接到不同的机器。你能证实这是一个有效的陈述吗?

http://social.msdn.microsoft.com/Forums/en-US/1bc3df95-c86d-4d25-aa20-30f61ed00c63/odd-socket-errors



如果您可以显示用于工作和非工作的连接字符串,并与非工作 PC 相比,提供更多关于“其他 PC”的详细信息......那将很有帮助 =]



如果我链接的帖子都不是解决方案,那么这个特定的谷歌搜索已经证明会产生一些看似有用的结果

"socket" "10057" "没有提供地址。"

于 2013-08-02T14:08:38.417 回答
0

如果您按照此处说明的所有步骤操作:http: //www.bidn.com/blogs/PatrickLeBlanc/ssis/700/connecting-to-db2-using-ssis,您是否仍然得到相同的结果?

也许是一个愚蠢的问题,安装后您是否重新启动了计算机?您是一台机器上的管理员用户而不是另一台机器上的管理员用户吗?

您可以尝试使用快速 telnet 命令验证端口连接性:

telnet your-db-host your-db-listening-port

如果它连接,那一个不在列表中。

于 2013-08-03T07:15:27.360 回答