ComautomationFactory.CreateObject和ComautomationFactory.Getobject用来创建COM实例。 而 ComautomationFactory.GetEvent则是返回一个ComautomationEvent实例,开发人员可以通过该方法激活相关事件。 ComautomationFactory.IsAvailable属性将返回一个布尔型,确认该COM组件是否正在被调用。 最后CreateObject<T>()暂时没有任何作用。 其简单的用法: 1 private dynamic outlook;
2
3 bool InitializeOutlook()
4 {
5 try 6 {
7 outlook = automationFactory.Getobject( " outlook.application " );
8 return true ;
9 }
10 catch (Exception)
11 12 13 {
14 outlook automationFactory.CreateObject( );
15 outlook.Session.GetDefaultFolder( 6 /* InBox */ ).display();
16 outlook.ActiveWindow.windowstate 1 ;
17 18 }
19 20 21 // 返回错误 22 false 23 24 25 } 在上面代码中,我们可以看到一个新的关键字" dynamic",该关键字是C# 4.0的新特性之一,其含义是允许声明一个动态类型的变量,在编译时,编译器允许我们调用任何方法和属性,不会出现异常报错,而在运行时会进行查找调用的方法和属性是否正常,如果方法或者属性存在,并且参数也正确,将会正常调用执行,反之,则返回Microsoft.CSharp.RuntimeBinder.RuntimeBinderException异常错误。对于dynamic关键字的详细解释和更多例程, 推荐大家看看MSDN详细介绍。 在项目中使用dynamic关键字,需要添加新的引用" Microsoft.CSharp", Silverlight 4与COM交互实例 相信读过上一篇的朋友都还记得,Silverlight 4默认的情况下仅能访问"My..."系列目录,例如“我的文档”,“我的音乐”,“我的图片”等。而使用COM API后,Silverlight 4将会突破该限制,允许应用访问本地任何磁盘和目录。 实例: 在本地任何磁盘和目录写文件和读文件 *** 作 在本实例中,我们仍旧使用上一篇中的项目代码SilverlightOOBDemo,对其进行简单的修改。 说到本地文件读写 *** 作,很多人都会想到fileSystemObject类,该类提供了简单而又全面的windows文件 *** 作方法,例如读文件,写文件,删文件,改文件,以及与之相同的目录 *** 作。在MSDN中,有关于 FSO所有的方法列表供大家参考。这里我们会用到CreateTextfile,Writeline,OpenTextfile,ReadAll等方法实现Silverlight 4 *** 作任何磁盘和目录写文件和读文件。 在项目中的Toolbar栏,添加新的 *** 作按钮, < button WIDth ="56" Height ="80" Style =" {StaticResource BlackGlossybutton} " margin ="1,0" Foreground ="White" x:name ="writefileBtn" Click ="writefileBtn_Click" > button.Content StackPanel Image VerticalAlignment ="top" HorizontalAlignment ="Center" Source ="/SilverlightOOBDemo;component/Images/Write.png" ="0,-5,0)"> Stretch ="None" /> TextBlock ="Bottom" Text ="写文件" textwrapPing ="Wrap" </ button ="readfileBtn" ="readfileBtn_Click" ="/SilverlightOOBDemo;component/Images/Read.png" ="读文件" > 为了两个button创建Click事件,writefileBtn_Click和readfileBtn_Click。 写文件 *** 作代码: voID writefileBtn_Click( object sender, RoutedEventArgs e)
using (dynamic fsoCom Scripting.fileSystemObject ))
dynamic file fsoCom.CreateTextfile( @" c:\test.txt , file.Writeline( Hello Silverlight 4. Silverlight写文件到C:\ file.Close();
运行OOB应用,点击“写文件”按钮,FSO将在C盘创建test文本文件,其内容如下: 而读文件代码: 1 2 3 fsoCom.OpenTextfile( 4 tbResult.Text file.ReadAll();
5 6 其运行效果如下: 以上都是使用FSO最基础的文件 *** 作API实现的,依次类推,可以很轻松 *** 作本地文件和目录。 今天Silverlight实例教程暂时介绍到这里,下一篇我将继续介绍Silverlight OOB应用与Office应用的交互。 本篇源代码下载
本文出自 “Kevin Fan” 博客,请务必保留此出处http://www.voidcn.com/article/p-ebhhwlnn-bke.html
总结以上是内存溢出为你收集整理的Silverlight实例教程 - Out of Browser与COM的交互基础全部内容,希望文章能够帮你解决Silverlight实例教程 - Out of Browser与COM的交互基础所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)