在VB中使用API關閉視窗

2021-04-20 15:38:50 字數 1824 閱讀 5687

1。使用sendmessage

private declare function sendmessage lib "user32" alias "sendmessagea" (byval hwnd as long, byval wmsg as long, byval wparam as long, lparam as any) as long

hwnd 為需要關閉的視窗程式的視窗控制代碼;

傳送的訊息可以用兩種選擇1,wmsg為wm_close,wparam,lparam為0;2,wmsg為wm_syscommand,wparam為cs_close,lparam為0。

2。使用terminateprocess

private declare function terminateprocess lib "kernel32" alias "terminateprocess" (byval hprocess as long, byval uexitcode as long) as long

hprocess 為指定要中斷的乙個程序的控制代碼 ;

uexitcode 程序的乙個退出**

3。使用closewindow

private declare function closewindow lib "user32" alias "closewindow" (byval hwnd as long) as long

hwnd為想要關閉視窗的控制代碼。

4。如果要關閉所有的視窗可以使用broadcastsystemmessage

private declare function broadcastsystemmessage lib "user32" alias "broadcastsystemmessage" (byval dw as long, pdw as long, byval un as long, byval wparam as long, byval lparam as long) as long

dw 為下述常數的乙個或多個;

bsf_flushdisk

每次處理完一條訊息後,都對磁碟進行重新整理(將未存檔的資料存下來

bsf_forceifhung

如目標處於掛起狀態,則在設定的超時後到期返回

bsf_ignorecurrenttask

傳送任務不接收訊息

bsf_lparambuffer

pdw 為下述常數的乙個或多個;

bsf_allcomponents

訊息進入能夠接收訊息的每乙個系統元件

訊息到達應用程式

bsf_installabledrivers

訊息到達可安裝的驅動程式

bsf_netdrivers

訊息到達

網路驅動程式

bsf_vxds

訊息到達系統裝置驅動程式

un 為訊息編號;

訊息和使用sendmessage時相同。

5。使用exit

window***關閉所有程式

private declare function exit

window*** lib "user32" alias "exit

window***" (byval uflags as long, byval dwreserved as long) as long

將uflags 設定為ewx_force強迫中止沒有響應的程序。

dwreserved 為0

注意!由於以下原因導致不能關閉程式。

1。在nt/2000/xp的系統中,程序控制代碼需要有process_terminate的訪問許可權才能被殺掉。

2。如果要關閉的程序正處於kernal-mode,那麼terminateprocess函式就會不起作用。

在WPF中使用MVVM的方式關閉視窗

在wpf程式中經常需要用彈出視窗的形式向使用者確認操作,使用者閱讀完相關資訊後,點選上面的ok或者cancel按鈕來關閉視窗,再進行後續操作。當使用mvvm設計模式時,ok和cancel會binding到viewmodel中的相關屬性上,因而在使用者點選了ok或cancel之後,我們希望能夠在vie...

在ACCESS VBA中使用VB的USERFORM

1 在access中使用 使用者窗體 教程 2 在access中匯入vb的窗體 大家都知道,在vb中,我們可以建立使用者窗體 userform 在vb環境中我們可以直接自由繪製窗體。作為同核心的vba,我們在access中卻無法使用使用者窗體,只能只用access的窗體,雖然兩者類似,但是還是有很多...

在VB程式設計中使用物件導向思想

不可否認,vb是rad的絕佳工具,但是它在應付較大規模的專案時,如果設計不當,往往會陷入極端醜陋的 的境地。我在大概兩三前改用c 現在暫時拾起它,儘管vb在近年沒有任何變化,但我看它時,卻感覺不太一樣了。我感覺,這得歸功與c 這個純物件導向的語言,使人潛移默化地有了物件導向的思想。同樣的功能,我感覺...