在前面已经介绍了Silverlight的Out of Browser模式与COM的基本 *** 作以及与Office COM的交互。这篇我们将介绍更多Silverlight Out of Brwoser的COM实例。
我们将继续使用过去的SilverlightOOBDemo项目进行简单扩展。
实例1:演示Silverlight与DOS的交互,对于windows API熟悉的朋友应该了解,使用WShell可以运行任何Dos命令。
1 private voID dosBtn_Click( object sender, RoutedEventArgs e)
2 {
3 using (dynamic shell = automationFactory.CreateObject( " WScript.Shell " ))
4 {
5 // shell.Run(@"cmd /k dir /w /p");
6 shell.Run( @" cmd /k Ping www.cnblogs.com -t );
7 }
8 9 }
实例2:使用WShell API模拟用户输入实例。使用WShell的SendKeys可以模拟用户输入效果到应用程序中,并且可以模拟一些特殊键功能,例如,回车,Tab,Ctrl等按键。
其中要实现模拟输入代码如下:
inputBtn_Click( {
shell.Run( c:\windows\notepad.exe shell.SendKeys( my blog:{Enter}jv9.cnblogs.com }
实例3:Silverlight OOB应用读取注册表信息实例
使用Shell.Application的RegRead方法可以读取本地注册表键值,例如,读取“HKLM\Software\Microsoft\ASP.NET\RootVer”,.Net Framework的版本。
regBtn_Click( (dynamic WShell string reg WShell.RegRead( HKLM\Software\Microsoft\ASP.NET\RootVer MessageBox.Show( .Net Framework Root Version: + reg);
读取结果:
实例4:使用Shell.Application的RegWrite方法可以对注册表进行写 *** 作。这个实例将实现添加Silverlight Out of browser应用到windows启动项。
1 regWriteBtn_Click( 2 3 (dynamic ShellApplication Shell.Application 4 5 dynamic commonPrograms ShellApplication.nameSpace( 11 6 allUsersPath commonPrograms.Self.Path;
7 8 dynamic directory ShellApplication.nameSpace(allUsersPath \Programs 9 dynamic link directory.Parsename(Deployment.Current.OutOfbrowserSettings.Shortname .lnk 10 OOBlink link.Path;
11 12 13 {
14 WShell.RegWrite( HKLM\Software\Microsoft\windows\CurrentVersion\Run\ 15 Deployment.Current.OutOfbrowserSettings.Shortname,
16 OOBlink);
17 MessageBox.Show( 请重启你的机器,你的应用将被自动载入启动列表. 18 }
19 20 当运行以上代码后,应用会将OOB应用快捷方式写入注册表HKLM\Software\Microsoft\windows\CurrentVersion\Run\
应用程序将在下次重启后,自动启动。
实例5:使用windows 7 API实现锁定应用到windows 7任务栏
在windows 7中使用Shell.Application类库允许遍历应用,检查Verbs进行应用锁定。
pinBtn_Click( 23 \AccessorIEs directory.Parsename( Calculator.lnk dynamic verbs link.Verbs();
for ( int i 0 ; i < verbs.Count(); i ++ )
dynamic verb verbs.Item(i);
if (verb.name.Replace( & , .Empty).Tolower() == pin to taskbar {
verb.DoIt();
}
21 当执行以上代码后,获取计算器应用快捷方式,然后执行“Pin to Taskbar”后,将应用锁定在windows 7任务栏。
实例6:Silverlight Out of browser语音阅读实例
使用windows自带的Speech API中的SAPI引擎SpVoice类可以实现语音阅读功能。
speechBtn_Click( (dynamic ISpeechVoice SAPI.SpVoice ISpeechVoice.Volume 100 ;
ISpeechVoice.Speak( <rate speed=\ \ ><pitch mIDdle=\ >Hello everyone! Welcome to my blog,http://jv9.cnblogs.com 当运行以上代码后,会听到以上阅读内容。
对于Silverlight Out of browser的COM应用有一款开源项目COM Toolkit,该控件在OOB模式下可以对本地数据库进行 *** 作,推荐大家参考学习。
今天就写到这里了,希望能对大家有所帮助。
源代码下载
欢迎大家加入"专注Silverlight" 技术讨论群:
32679955(六群) 23413513(五群) 32679922(四群) 100844510(三群) 37891947(二群) 22308706(一群)本文出自 “Kevin Fan” 博客,请务必保留此出处http://www.voidcn.com/article/p-bubeedyo-bke.html
总结以上是内存溢出为你收集整理的Silverlight实例教程 - Out of Browser与COM互 *** 作实例全部内容,希望文章能够帮你解决Silverlight实例教程 - Out of Browser与COM互 *** 作实例所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)