框架安装程序
VB.NET解决方案的原代码
.NET解决方案的原代码
介绍:
通常,开发者用VBA来建立基于Office的应用程序。当.NET出现之后,大家开始用.NET来解决围绕建立文档处理的解决方案。为了满足这种需要,微软为Microsoft Office发行了Visual Studio Tools(VSTO),添加到Visual Studio .NET 2003中。以便建立管理Word 2003 或 Excel 2003的应用程序。
Office 2003 的Visual Studio Tools(VSTO)是一个伟大的工具用来用.NET建立 Office的解决方案。但遗憾的是Office 2000的用户不能使用该工具。这里就是尝试填补这个缺陷。这里将介绍怎样用Visual Studio .NET 2003建立Office 2000解决方法。我常识将代码尽量贴近VSTO 2003以便轻松的移植到Office 2003。
开始:
首先介绍如果在 Visual Basic .NET中建立一个Word 程序。我们将建立一个程序包含可以显示Word文档的窗口框架。
打开Visual Studio .NET,在File | New |Project中,选择项目类库摸板如下:
Use Project| Add References menu. Chose the COM tab and add a reference to Microsoft Word 9.0 object library.
使用菜单中Project| Add。选择COM并添加一个Microsoft Word 9.0对象库
CollapseImports Word
Public Class OfficeCodeBehind
Friend WithEvents ThisDocument As Word.Document
Friend WithEvents ThisApplication As Word.Application
#Region "Initialization code"
' Default constructor.
Public Sub New()
End Sub
Public Sub Startup(ByVal application As Object, ByVal document As Object)
ThisApplication = CType(application, Word.Application)
ThisDocument = CType(document, Word.Document)
End Sub
Public Sub Shutdown()
ThisApplication = Nothing
ThisDocument = Nothing
End Sub
Private Sub ThisApplication_DocumentOpen(ByVal Doc As Word.Document)
Handles ThisApplication.DocumentOpen
MsgBox("Application event Document open")
End Sub
Private Sub ThisDocument_New() Handles ThisDocument.New
MsgBox("inside Document new managed code")
End Sub
#End Region
End Class
建立一个OfficeCodeBehind类。建立变量和主文件对象。
建立引入代码有开始和结束指令。开始指令在打开一个WORD文档是在引入ThisApplication 和 ThisDocument时调用,结束指令在关闭WORD文档并做清理时调用。另外,建立事件句柄在基本事件和向文档中写入字符是使用。
建立窗口框架调用OfficeCodeBehind类的WriteStringToWordDocument来想WORD中写入字符。
打开WORD,在菜单 Tools | Macro选择 Visual Basic Editor。通过选择Tools|References点浏览按钮来添加一个参量到WordTest1.tlb文件,如下:
Dim app As New WordTest1.OfficeCodeBehind
Private Sub Document_Close()
app.ShutDown
End Sub
Private Sub Document_Open()
app.Startup Me.Application, Me
End Sub
添加以上代码到Visual Basic编辑器中。
以上代码是将WORD文档和.NET的类库关联的工具。当打开了一个WORD文档时,它激活了Document_Open事件,通过调用OfficeCodeBehind的StartUp方法。启动了一个参量到程序(Word.Application)和一个到文档(Word.Document)的参量。Startup方法拷贝信息到本地变量中和钩住事件句柄。