最近因为项目需要,花了一段时间来研究Silverlight对本地注册表的操作,找了很多资料,但是都不满足需求,后来自己将VBS操作注册表的代码重新修改移植到Silverlight上,觉得挺好用的,特意将其摘取出来,供大家分享(OOB模式下才可以)。
1.Silverlight代码:
<navigation:Page x:Class="LogInfoTest.Register"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"
d:DesignWidth="640" d:DesignHeight="480"
Title="Register Page">
<Grid x:Name="LayoutRoot" Background="White">
<TextBlock Text="获取本机已安装软件的列表" FontSize="12" VerticalAlignment="Top" Margin="0,8,0,0"></TextBlock>
<sdk:DataGrid Margin="0,34,0,0" x:Name="DataGrid1" AutoGenerateColumns="False">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Binding="{Binding RegName, Mode=TwoWay}" CanUserReorder="False" Header="注册表名称" IsReadOnly="True" />
<sdk:DataGridTextColumn Binding="{Binding DisplayName, Mode=TwoWay}" CanUserReorder="False" Header="软件名称" IsReadOnly="True" />
<sdk:DataGridTextColumn Binding="{Binding DisplayVersion, Mode=TwoWay}" CanUserReorder="False" Header="软件版本" IsReadOnly="True" />
<sdk:DataGridTextColumn Binding="{Binding Publisher, Mode=TwoWay}" CanUserReorder="False" Header="发布者" IsReadOnly="True" />
<sdk:DataGridTextColumn Binding="{Binding InstallLocation, Mode=TwoWay}" CanUserReorder="False" Header="安装目录" IsReadOnly="True" />
<sdk:DataGridTextColumn Binding="{Bind