內嵌WORD/OFFICE的WINFORM程序


摘自:http://www.blogjava.net/AndyZhang/archive/2012/06/05/379993.html  

內嵌WORD/OFFICE的WINFORM程序——DSOFRAMER使用小結 最近一直想用VC#2005做個內嵌WORD/OFFICE的WINFORM程序,目前主要有以下解決途徑:

1、直接通過API把WORD/OFFICE的窗口句柄給放到WINFORM中(感覺較為復雜);

2、通過WEB BROWSER;

3、利用DSOFRAMER。

本人都測試了一下,覺得DSOFRAMER更符合自己的願望,故決定使用DSOFRAMER來實現。

操作步驟:

1、從微軟網站下載DsoFramer_KB311765_x86.exe,解開將得到dsoframer.ocx;

2、把dsoframer.ocx拷貝到系統目錄下,並注冊,我是寫了一個reg.bat來實現:

copy dsoframer.ocx c:\windows\system32\dsoframer.ocx
regsvr32.exe c:\windows\system32\dsoframer.ocx

3、啟動VS2005,新創建一個WINFORM的C#程序;

4、在設計工具欄中,新添加選項,在彈出的頁面中選擇“TAB”頁,然后瀏覽,選擇c:\windows\system32\dsoframer.ocx進行添加,此時設計工具欄中將看到這個工具,名字為“DSO FRAMER CONTROL OBJECT”;

5、拖動此工具到某設計FORM窗口中,此時將在代碼文件中添加了以下行:

private AxDSOFramer.AxFramerControl axFramerControl1;

6、打開文件,this.axFramerControl1.Open(_filePath);//注:_filePath為.doc或者.xls為后綴的文件;

7、此時就可以直接在打開的WORD/EXCEL上進行編輯保存等等操作了。

注:在操作過程中,發現按打印預覽按鈕后關閉,會引起WORD/EXCEL報錯,找了好久,后來直接安裝OFFICE2003 SP3,哈哈,fix the bug,不會報錯了。

 

本文來自http://www.cnblogs.com/tianfu/archive/2009/05/07/1452047.html

 

 

1.將dsoframer.ocx復制到c:\windows\system32\
2.雙擊運行regocx.bat文件

在vs2010中使用dsoframer控件:
1.在工具箱中添加項,在COM 選項卡中選擇已注冊的dsoframer控件。
2.將公共控件中的DSO Framer控件拖到表單上。
3.在DSO中打開Office文件代碼:
this.axFramerControl1.Open("c:\\test.xls");
4.將Office文件保存的代碼:
this.axFramerControl1.Save("c:\\test.xls",true,"myname","mypass");

例如:

private void button1_Click(object sender, EventArgs e)
{
this.axFramerControl1.Open("C:\\Documents and Settings\\Administrator\\桌面\\復件 新建 Microsoft Word 文檔.doc");
}

private void button2_Click(object sender, EventArgs e)
{
this.axFramerControl1.Save("C:\\Documents and Settings\\Administrator\\桌面\\111111111 文檔.doc", true, "myname", "mypass");
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM