我正在尝试实现从 Windows 服务到 Silverlight 应用程序的数据推送。我创建了一个发送此策略文件的策略服务器:
<?xml version="1.0" encoding ="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from>
<domain uri="*" />
</allow-from>
<grant-to>
<socket-resource port="8400" protocol="tcp" />
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
使用 TCP 测试工具,我已经验证当我连接到端口 943 并发送请求时,我会收到该策略文件。
此外,在我的策略服务器中使用断点,我已经确认 Silverlight 应用程序正在访问该服务,并且该服务似乎没有错误地发送策略文件。
我还确认我的数据推送服务在上述端口上正确监听。
但是,不知何故,Silverlight 与我的数据推送服务的连接总是因 WinSock 10013 Access Denied 错误而失败。
我唯一能想到的是我的策略文件不正确,尽管据我所知它符合规范。如果您希望我发布我的任何其他代码,请告诉我。任何帮助,将不胜感激。