zoukankan      html  css  js  c++  java
  • 企业内部使用Silverlight5浏览器内受信任的应用程序

    silverlight 5的一个有趣的新特性是:可以在浏览器内完全受信任运行。这对于企业内部应用可谓重大的改进,可以访问本地COM,而且是在浏览器内。至少可以访问本地文件系统这一点就方便很多,很多需要C/S结构才能完成的事借助SL5也能实现。我一直认为SL是开发企业应用的利器,JS+HTML方式的前端难与之相比。

    1、silverlight应用程序项目属性中以下选项搭钩:

    如果你在调试时运行会发现,有权限在本地创建文件,这是因为你用"localhost"访问的原因,不要以为大功告成了!

    2、修改注册表:

    • Key path for 32-bit computers: HKEY_LOCAL_MACHINE\Software\Microsoft\Silverlight\

    • Key path for 64-bit computers: HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Silverlight\

    • Value name: AllowElevatedTrustAppsInBrowser

    • Value type: DWORD

    • Valid Values:

      • Disabled - 0x00000000

      • Enabled - 0x00000001

      如何修改好像有问题:公司100台电脑难道要逐个修改?借助域策略吧。

    3、签名你的XAP文件:通过你的域管理员发布的证书为XAP签名,或者创建一个测试证书用于测试

    然后点击“更多详细信息”

    安装证书

    存储到“受信任的发布者”或者“受信任的根证书颁发机构”

    证书上没有红叉,说明安装成功。相信企业内部都有内部使用的证书(如果使用https登陆的话,肯定已经有了,直接用它签名就是了),也就不需要每个机器安装了。使用计算机名或者IP地址进行测试:

    OK了!

    测试代码:

    private void WriteFileButton_Click(object sender, RoutedEventArgs e)
    {
    // check if we can actually do this
    if (!Application.Current.HasElevatedPermissions)
    {
    MessageBox.Show("Application requires elevated trust for this!");
    return;
    }

    // create a directory if necessary
    var tempDirectory = @"c:\temp";
    if (!Directory.Exists(tempDirectory))
    {
    Directory.CreateDirectory(tempDirectory);
    }

    // build the full filename
    var filename = string.Format("tempFile-{0}.txt", _rnd.Next(0, 65536));
    var fullPath = Path.Combine(tempDirectory, filename);

    // write a new file
    using (FileStream fs = File.Create(fullPath))
    using (StreamWriter sr = new StreamWriter(fs, Encoding.UTF8))
    {
    sr.WriteLine("Hallo from a trusted app!");
    }

    // Notify the user
    MessageBox.Show("File has been created.");
    }


    如果是面向Internet的应用,可能需要制作安装程序,然后在初次安装时,做好注册表相关的设置工作了。

    英文原文:http://www.pitorque.de/MisterGoodcat/post/Silverlight-5-Tidbits-Trusted-applications.aspx

  • 相关阅读:
    OpenCV开发笔记(五十八):红胖子8分钟带你深入了解图像的矩(图文并茂+浅显易懂+程序源码)
    Oracle数据迁移后由列的直方图统计信息引起的执行计划异常
    oracle统计信息的锁定与解锁
    [统计信息系列7] Oracle 11g的自动统计信息收集
    [统计信息系列6] 数据字典统计信息
    [统计信息系列5] 系统统计信息
    MongoDB创建与删除集合(collection)
    MongoDB创建与删除数据库
    [统计信息系列4] 列的统计信息
    [统计信息系列3] 索引的统计信息
  • 原文地址:https://www.cnblogs.com/slmk/p/2369642.html
Copyright © 2011-2022 走看看