2008-11-05 93 views
2

我有打開一個ASP.net頁面上使用VBScript一個word文檔一些代碼:嵌入Word文檔到ASP.net頁面和訪問使用VBScript

set objWord = CreateObject("Word.Application") 

objWord.Visible = True 

objWord.Documents.Open "c:\inetpub\wwwroot\JSWordTest\test.doc", False, False, False 

這個偉大的工程,但在另一個打開Word文檔窗口。理想情況下,我想讓它看起來好像它包含在當前頁面中,也許在IFrame中。我點擊了一些其他按鈕,將文本粘貼到word文檔中。

我不能只是將iframe的src設置爲word文檔,因爲需要對word文檔(objWord)進行引用才能讓我再次使用Vbscript將文本粘貼到文檔中。

不知道這是可能的,但任何想法/替代品歡迎?

要求: 的Word文檔需要從Web瀏覽器

顯示在Word文檔的一側會出現一些按鈕,當點擊文本粘貼到它

回答

2

您可以使用此技術來獲得Word文檔的內容根本不顯示任何窗口。

' Declare an object for the word application ' 
Set objWord = CreateObject("Word.Application") 

objWord.Visible = False     ' Don''t show word ' 
objWord.Documents.open("C:\test.doc") ' Open document ' 
objWord.Selection.WholeStory   ' Select everything in the doc ' 
strText = objWord.Selection.Text  ' Assign document contents to var' 
objWord.Quit False      ' Close Word, don't save ' 

一旦你得到了變量中的文件的內容,你可以做你想做的與它儘可能與文件撰寫或任何你想用寫出來。

您可以找到MS Word應用程序對象上更多的細節和它的方法在這裏:http://msdn.microsoft.com/en-us/library/aa221371(office.11).aspx

0

如果是在客戶機上安裝一個ActiveX組件的選項,你可以嘗試EDraw Office Viewer component或cheapter Ultra Office Control。兩者都基於Microsoft的DSOFramer示例,並提供了類似的方法來與文檔進行交互。

示例代碼,並給出瞭如何觸發對話框,插入文字等

0

您可以從Excel Viewer組件獲得靈感。它就像EDraw Office Viewer一樣自由而開放源代碼。目前,它僅打開Office文檔,但您可以輕鬆將其更改爲使用Word。

0

可能嘗試保存爲HTML格式

Const wdFormatHTML = 8 

dim doc 
set doc = objWord.Documents.open("C:\test.doc") 
doc.SaveAs "doc.htm", wdFormatHTML 

' etc ... 

,然後用它作爲你的iframe文檔的源。請記住,保存爲HTML格式時,Word將創建相應的資源文件夾(對於圖像等),因此您可能需要考慮這一點。