Silverlight调用本机exe程序

简介: 要点: 1. Silverlight必须启用OOB模式,以及 Require elevated trust when running in-browser.参考下图设置 注:OOB模式,并不意味着必须脱离浏览器运行,仍然可以嵌入到网面中运行   2.

要点:

1. Silverlight必须启用OOB模式,以及 Require elevated trust when running in-browser.参考下图设置

注:OOB模式,并不意味着必须脱离浏览器运行,仍然可以嵌入到网面中运行

 

2. 必须添加Microsoft.CSharp.dll 引用,默认在目录 c:\Program Files\Microsoft SDKs\Silverlight\v5.0\Libraries\Client\ 下

 

3. 调用的exe路径,不允许出现空格

下面是使用示例:

 1 using System;
 2 using System.Runtime.InteropServices.Automation;
 3 using System.Windows;
 4 using System.Windows.Controls;
 5 
 6 namespace SLTrustSample
 7 {
 8     public partial class MainPage : UserControl
 9     {
10         public MainPage()
11         {
12             InitializeComponent();
13         }
14 
15         private void CallExe(String exeFilePath)
16         {
17             try
18             {
19                 dynamic cmd = AutomationFactory.CreateObject("WScript.Shell");
20                 cmd.Run(exeFilePath, 1, true);
21             }
22             catch (Exception ex)
23             {
24                 MessageBox.Show("权限不足,请再OOB模式下运行,详细原因:" + ex.Message);
25                 return;
26             }
27         }
28 
29 
30 
31         private void LaunchMyApp(object sender, RoutedEventArgs e)
32         {
33             CallExe(@"C:\exe\cpu-monitor.exe");
34         }
35 
36 
37         private void LaunchNotepad(object sender, RoutedEventArgs e)
38         {
39             CallExe(@"notepad c:\\test.txt");
40         }
41     }
42 }

除调用本机exe外,其实还能干很多其它事情,比如读取Windows注册表,调用本机Com组件完成指定的功能...

 

使用场景:比如最常见的IM聊天工具,浏览网页后,在网页上点击“与我聊天”按钮,启动本机客户端的IM聊天工具。当然,不止这一种场景,其它场景请自行脑补:)

目录
相关文章
|
JavaScript 前端开发
艾伟:简单探照灯遮照效果的Silverlight程序
   最近做SonySource项目时实现了几个很小的Silverlight程序,分别是Clock、HomePeoplePicker和ManageMentPeoplePicker。实际上这三个silverlight程序都非常简单,主要特点有以下几个方面:   1.
1110 0
一起谈.NET技术,Silverlight 游戏开发小技巧:透明背景的Silverlight程序
  一些朋友在玩窝窝世界的时候,发现官方网站上的进入入口程序是Silverlight,但是有趣的是一个透明背景的Silverlight程序,这个效果最早我也未找资料,在未来Silverlight程序会在各个方面应用,透明背景的效果就会涉及,这种效果预览如下:   下面一步一步的告诉大家这个小技巧,首...
967 0
一起谈.NET技术,Silverlight杂记-本地程序间的互通
  只要使用到两个类一个用来发送一个用来接收。可以有多个发送端,但只能有一个接收端。   来段demo public partial class localcoon : UserControl {       public localcoon() {           InitializeC...
1017 0
Silver“.NET研究”light 游戏开发小技巧:透明背景的Silverlight程序
  一些朋友在玩窝窝世界的时候,发现官方网站上的进入入口程序是Silverlight,但是有趣的是一个透明背景的Silverlight程序,这个效果最早我也未找资料,在未来Silverlight程序会在各个方面应用,透明背景的效果就会涉及,这种效果预览如下:   下面一步一步的告诉大家这个小技巧,首...
1004 0
|
JavaScript 前端开发 开发工具

热门文章

最新文章