none
有关Silverlight在OutOfBrowser模式下与Com交互的问题 RRS feed

  • 问题

  • 我在使用Silverlight在OutOfBrowser模式下与Com交互时遇到这样一个问题:

    我写了一个小的exe程序,然后再silverlight中使用com去调用它,代码如下:

      try
              {
                           WShell.Run(@"C:\Users\modify\Documents\Visual Studio 2010\Projects\Monitor\Monitor\bin\Debug\Monitor.exe");
                WShell.Run(@"c:\windows\notepad.exe");
              }
              catch (Exception ex)
              {
                MessageBox.Show(ex.Message);
              }

    其中C:\Users\modify\Documents\Visual Studio 2010\Projects\Monitor\Monitor\bin\Debug\Monitor.exe就是我自己写的小exe程序,

    c:\windows\notepad.exe使系统自带的记事本程序,当我将silverlight工程作为起始工程运行时,将直接运行OOB模式,这样的话两个exe程序都调用正常。

    当我按照传统模式将web工程作为起始工程时,将会先运行浏览器模式,然后出现右键安装OOB模式,但安装好OOB模式后,我再想通过本silverlight运行上述的

    两个exe程序,就只有系统记事本程序能够运行成功了,我自己的Monitor.exe遍运行不起来,且无任何异常提示。

    在整个操作过程中,我没有修改任何代码,就只是更换了起始工程而已,为什么会出现这样的问题,我头都快晕了,不知道哪位大牛可以帮帮我

    2010年9月28日 7:03

全部回复

  • 会不会是文件访问权限问题?你把exe文件复制到比如D:\根目录下试试。
    Mog Liang
    2010年9月28日 14:01
  • 你要注册为Com组件,并且要有processID


    努力!完成了js解析器,还差一个svg插件,一个绘图程序,做好自己,呵呵~!
    2011年7月12日 2:06
    版主