繁体   English   中英

在 Mac 上从 Silverlight 打开本地文件

[英]Open local files from Silverlight on Mac

我们有一个 Silverlight 客户端,其中有两个要求: - 在本地网络上打开文件(通过使用 windows 上的 UNC 和 mac 上的 SMB) - 将文件从 Explorer/Finder 拖放到 SL 客户端。

在 windows 上打开文件(使用 UNC)可以正常工作,可以使用 IE、FireFox(经过一些调整)或使用 COM 自动化 Out Of Browser。

在 Mac 上,这被证明是困难的。 Mac 上的 Out Of Browser 没有“提升的信任功能”(相当于 Windows 上的 COM 自动化),因此在 Mac 上的 OOB 中,HyperlinkButton 控件是打开文件(uri)的唯一方法,但这会在打开“ SMB 文件”(我猜是由于 SL OOB 中的跨方案/跨域限制)。 所以我们不得不在浏览器中使用 go:现在 Safari 不能很好地处理这个问题。 FireFox 虽然可以打开本地文件,但如果您调整浏览器以允许这样做。 所以我们做到了。

然后问题是文件拖放(由于浏览器的限制,它在 Safari 中有效,但在 Firefox 中无效)。 我们通过创建一个 SL 控件来解决此问题,该控件使用 HTML 桥将 HTML div 注入到用作可放置区域的 SL 客户端之上。

由于能够打开本地文件需要调整浏览器,因此最好的解决方案是具有打开本地文件 OOB 的功能(相当于 windows 上的 COM 自动化,例如能够运行 AppleScript)。

这样的事情可能吗? 是否可以通过 SMB 在 OOB 中的 Mac 上以某种方式打开文件?

谢谢。

PS:所以我们通过在浏览器中运行 FireFox 5(经过调整以允许打开本地文件)在 Mac 上找到了一个可行的解决方案——直到我们遇到一个更严重的问题,看起来像是 FireFox 的 SL 插件中的严重渲染问题在 Mac 上; 这个问题发布在这里: Silverlight rendering issue in Firefox 4 and 5 on MacBooks

我认为您正在寻找的是如何让受信任的 Silverlight 应用程序在浏览器中运行。 windows 有一个解决方案。 而且我不知道我们如何在 MAC 中做到这一点。

读:

http://msdn.microsoft.com/en-us/library/gg192793(v=vs.95).aspx

http://www.simple-talk.com/dotnet/.net-framework/elevated-trust-in-silverlight-4/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM