在c#中操縱excel或者word之類的東西,應該很多人都做過,不過在呼叫完之後,我們好象都有一些頭痛的事情,那就是結束這些程序.很多書都沒有說,很多論壇上也沒有.我在上乙個專案中也遇到過這樣的問題,但是後來做了一些嘗試,發現真的有解決方案的.
解決方案有兩種:
一,就是建立的excel或者word是可見的,也就是visiable值為true.那麼我們可以用一種很簡單的方法結束這個程序.
**如下
public
static
bool
...inthwnd
=excel.hwnd;
uint32 processid
=new
uint32[1];
getwindowthreadprocessid((intptr)hwnd, processid);
process p
=process.getprocessbyid(convert.toint32(processid[
0]));
p.kill();
在這段程式中我們將會用到getwindowthreadprocessid這個函式,這是乙個win函式,那麼我們在使用這個函式的時候要先新增這個函式的入口.**如下
[dllimport(
"user32.dll
", charset
=charset.auto)]
public
static
extern
uint32 getwindowthreadprocessid(intptr hwnd, uint32 processid);
這樣我們就可以很容易的結束掉我們的應用程式建立的excel程序了.記住是我們的程式建立的,不是使用者建立的.
VB程式中怎麼樣結束EXCEL程序
try catch ex as exception if exl is nothing then end if end try system.runtime.interopservices.marshal.releasecomobject worksheets system.runtime.inte...
結束其它程序
第一步 findwindow 類名 視窗標題 返回值視窗控制代碼 列子 hwnd hwnd findwindow txguifoundation qq2011 注意的是兩個引數可以只寫乙個,另乙個為null。第二步 getwindowthreadprocessid 視窗控制代碼,程序id 例子 dw...
VC 結束程序
1.使用exitprocess 結束程序 程序只是提供了一段位址空間和核心物件,其執行時通過在其位址空間內的主線程來體現的。當主線程的進入點函式返回時,程序也就隨之結束。這種程序的終止方式是程序的正常退出,程序中的所有執行緒資源都能夠得到正確的清除。除了這種程序的正常退出方式外,有時還需要在程式中通...