用Silverlight打开一个.exe

问题描述:

我试图让silverlight打开OnscreenKeyboard。我写了一个代码,但它抛出了System.InvalidOperationException。用Silverlight打开一个.exe

try 
     { 
      HtmlPage.Window.Eval("var myshell = new ActiveXObject('WScript.shell'); myshell.run('" + OSK + "');"); 

     } 
     catch (Exception ex) 
     { 
      textBox1.Items.Add(ex.ToString()); 
     } 

我在做什么错?

您被内置于IE的安全性阻止。 Internet Explorer将只允许使用ActiveXObject构建一些可信的COM对象。你能想象一下,如果一个网站有权做你正在尝试做的事情,那么可能会造成的破坏?

+0

谢谢你的回答。我想到了一个安全问题,但是没有办法调用osk?我知道Silverlight是一个Web应用程序,不应该运行任何.exe,但我需要它用于我的触摸屏应用程序与文本框。 – 2011-12-20 13:47:21

+0

@knut:看看这个:http://www.orktane.com/Blog/post/2009/11/09/Virtual-Input-Keyboard-Behaviours-for-Silverlight.aspx – AnthonyWJones 2011-12-20 15:18:56