利用TWebBrowser開啟WORD文件之後 |
答題得分者是:hagar
|
syene
一般會員 發表:17 回覆:12 積分:5 註冊:2003-01-04 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
用如下的方式試試:
uses ComObj; procedure TForm1.Button2Click(Sender: TObject); var v: Variant; begin try v := GetActiveOleObject('Word.Application'); // 有 MS Word 文件被開啟的話就會執行到這一行 v.Quit; // 以下兩行關閉 MS Word v := Unassigned; except // 觸發 Exception 的話表沒當前沒有 MS Word 文件被開啟 end; end;-- hagar. |
syene
一般會員 發表:17 回覆:12 積分:5 註冊:2003-01-04 發送簡訊給我 |
試了之後,發現依舊佔著記憶體...
其實他沒有視窗出現,只是當你開啟妳的app去讀取word文件後,
一經載入後就無法由app本身terminate,
但由task manager是可以移除啦!
但是這樣對你的app就不好啦...不是嗎?
引言: 用如下的方式試試:發表人 - syene 於 2005/06/18 11:58:59uses ComObj; procedure TForm1.Button2Click(Sender: TObject); var v: Variant; begin try v := GetActiveOleObject('Word.Application'); // 有 MS Word 文件被開啟的話就會執行到這一行 v.Quit; // 以下兩行關閉 MS Word v := Unassigned; except // 觸發 Exception 的話表沒當前沒有 MS Word 文件被開啟 end; end;-- hagar. |
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
syene
一般會員 發表:17 回覆:12 積分:5 註冊:2003-01-04 發送簡訊給我 |
謝謝hagar熱心的提供方法,
其實應該是我的問題沒po清楚,
我的系統是在windows 2000 server SP4,
OFFICE 2000,Delphi 7.0。
其實該應用程式很簡單,
就是利用TWebBowser元件瀏覽office 2000 文件,
包括:Word, Excel ,甚至是PowerPoint,jpeg,gif,
還有Flash 等。
這個程式大致上都完成了,
唯獨執行後,在Windows 工作管理員中,
會留下 WINWORD.EXE 佔用記憶體未隨ap關閉而釋放,
但是該ap 開啟EXCEL 文件就不會有這成況,
而能隨著ap關閉然後Terminate "EXCEL.EXE" Process,
不過還是要強調一次,
其實在我目前的系統,
如果直接利用Microsoft IE 開啟 word 文件,
當關閉 IE 之後,也一樣有這情形,
WINWORD.EXE 該 process 依然未隨著ie關閉而terminate,
但EXCEL.EXE就會隨著 ie關閉而terminate. 我在想這會不會是word的問題?
另外有沒有一種方法可以查出有關該AP在執行過程中,
可能使用到的其他應用程式,
當然包括office,在ap結束時一併關掉?
謝謝.
引言: 小弟試的結果有點不同 當程式關閉後, 程式管理員中的 winword.exe 這個 process 也會消失 所以幫不上忙 -- hagar. |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |