2011-12-20 133 views
0

我試圖讓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()); 
     } 

我在做什麼錯?

回答

2

您被內置於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