【问题标题】:Running Silverlight 5 RC P/Invoke application in a browser from internet?在 Internet 的浏览器中运行 Silverlight 5 RC P/Invoke 应用程序?
【发布时间】:2012-08-29 22:34:08
【问题描述】:

在 Web 浏览器中运行应用程序时,是否可以运行使用 P/Invoke 访问 Win API 函数的 Silverlight 5 RC 应用程序?该应用程序的来源来自互联网上的网站。

我问这个是因为我没有运气。 我遇到错误:Silverlight 应用程序中的未处理错误尝试通过安全透明方法“xxxx”通过方法“yyyyy”调用本机代码失败。 调用本机代码的方法必须是安全关键的或安全安全关键的。

我尝试在调用 P/Invoke 方法的方法上添加 [SecurityCritical] 属性,但没有成功。然后我试图把它放到整个调用类中,但还是没有运气。

有人对此有解决方案吗?

有可能这样做吗? 是否因为部分信任来自互联网的应用程序而导致问题?

【问题讨论】:

  • Silverlight 5 RC?你是说候选发布者?还是您的意思是 RTM/RTW?
  • 是的。我的意思是候选版本。
  • 有理由不使用最新版本吗? RC 可能包含稍后修复的重大错误。
  • 对不起,我开始使用 RC 版本并自动离开它。我搬到了最新的 Silverlight 版本,但没有运气。看起来我们需要特殊的注册表配置来制作完全信任的应用程序。
  • 啊,是的,如果您的问题只是“如何在浏览器中启用提升的信任”,您需要代码签名 + 注册表/组策略设置。

标签: web pinvoke silverlight-5.0


【解决方案1】:

要使用 P/Invoke,您的 SL 应用程序必须是完全信任的应用程序。

您可以从浏览器运行受信任的应用程序,但它需要some setup by an admin

【讨论】:

  • 在这种情况下,使用 P/Invoke 运行 Win32 指令并没有太多好处。与 Silverlight 相比,使用独立应用程序可以更好地实现这一点。
猜你喜欢
  • 1970-01-01
  • 2012-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-26
  • 1970-01-01
  • 1970-01-01
  • 2020-06-10
相关资源
最近更新 更多