當前位置:首頁 » 編程語言 » 怎麼直接關閉c語言進程
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

怎麼直接關閉c語言進程

發布時間: 2022-05-29 05:55:53

A. 怎麼用c語言結束一個進程求代碼

基本思路:
1. 用Process32First+Process32Next枚舉所有進程。
2. 對枚舉的進程取程序名,比較是不是要關掉的程序。
3. 如是,調用TerminateProcess()結束它。
有的程序一啟動就不止一個進程,所以即使關掉一個,也繼續枚舉。

用法例:kp iexplore.exe 關閉IE進程(所有IE瀏覽器的窗口都關掉)
/********************************************
文件名:kp.c
程序名:kp.exe
用法例:kp iexplore.exe
********************************************/
#include <windows.h>
#include <tlhelp32.h>

int KillMyProcess(char *exeName)
{
int rc = 0;
HANDLE hSysSnapshot = NULL;
PROCESSENTRY32 proc;
hSysSnapshot = CreateToolhelp32Snapshot ( TH32CS_SNAPPROCESS, 0 );
if ( hSysSnapshot == (HANDLE)-1 ) return 1;

proc.dwSize = sizeof(proc);
if ( Process32First ( hSysSnapshot, &proc ) ) {
do {
if (stricmp(proc.szExeFile, exeName)==0) {
HANDLE Proc_handle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, proc.th32ProcessID);
if (Proc_handle==NULL || !TerminateProcess(Proc_handle, 0)) rc = 1;
else rc = 0;
}
} while ( Process32Next ( hSysSnapshot, &proc ) );
}
CloseHandle ( hSysSnapshot );
return rc;
}

int main(int argc, char *argv[])
{
if (argc>1) {
printf("Kill %s....\n", argv[1]);
if (KillMyProcess(argv[1])==0) printf(" --- Process is killed.\n");
else printf(" --- Process is not killed \n" ) ;
}
return 0;
}

B. 怎麼用c語言結束某進程

首先你要知道該進程的PID


如果在windows下可以用tskill PID命令來實現,如果是c語言,只需要用system函數就可以實現

#include"stdio.h"
#include"stdlib.h"
intmain()
{
system("tskillXXXX");
return0;
}

其中XXXX就是你需要傳入的進程的PID


如果是linux或者unix的系統


則用kill命令:

#include"stdio.h"
#include"stdlib.h"
intmain()
{
system("killXXXX");
return0;
}

XXX一樣是進程的PID

C. C程序關閉進程

以關閉iexplore.exe為例:
#include<stdio.h>
int main()
{
system("taskkill /im iexplore.exe");
return 0;
}

D. 如何用c語言,或者其他語言關閉某個進程

可以使用黑窗口處理 如果硬要使用C語言,你使用system就可以了
延遲啟動需要創建服務啟動關聯,使用sc 創建關聯,然後服務關閉,要看服務的參數了,一般都會設置關閉參數,找到使用就可以了,等待時間,sleep一下

E. c語言中哪一個函數可直接結束當前程序

exit(正常結束進程)
相關函數 _exit,atexit,on_exit

表頭文件 #include<stdlib.h>

定義函數 void exit(int status);

函數說明 exit()用來正常終結目前進程的執行,並把參數status返回給父進程,而進程所有的緩沖區數據會自動寫回並關閉未關閉的文件。

返回值

F. C語言菜單控制,引用什麼可以結束退出

你好,可以使用exit
()函數。具體信息如下:
函數名: exit()
所在頭文件:stdlib.h
功 能: 關閉所有文件,終止正在執行的進程。
exit(1)表示異常退出.這個1是返回給操作系統的。
exit(x)(x不為0)都表示異常退出
exit(0)表示正常退出

G. C語言的程序用任務管理器關不掉怎麼辦

任務管理器 不要選應用程序那欄,死掉的程序結束不掉很正常。要選擇進程,比如找到aaaaaa.exe,把它結束掉

H. c語言 退出整個程序或函數的命令是什麼

c語言退出整個程序或函數的命令是return、goto 、break 、break。

1、return 返回;

return 表示從被調用函數返回主調函數繼續執行,返回時可附帶一個返回值,由return後面的參數設定。

2、goto 無條件跳轉;

goto語句也稱作無條件轉移語句,其一般格式為goto語句標號:其中語句標號是按照標識符規定書寫的符號,放在某一行語句行的前面,標號後加冒號(:)。

3、break 調處最近一層塊;

大多數情況下是終止上一層的循環,C語言中break在switch中執行一條case後跳出語句的作用 使程序跳出switch執行switch以後的語句 如果沒有break switch會從滿足條件的地方執行到switch結構結束。

(8)怎麼直接關閉c語言進程擴展閱讀

break語句使用

示例:

#include <stdio.h>

void main()

{

int x=1;

while(x<=4)

{

printf("x=%d ",x);

if (x==3)

{

break;

}

x++;

}

}

I. c語言怎麼關閉正在運行的應用程序

可以通過system 函數,調用dos命令taskkill實現關閉正在運行的應用程序。

system("taskkill /im notepad.exe");
會關閉記事本應用。
system("taskkill \F /pid 1234 \T");
會強制結束pid為1234的進程及其子進程。

關於taskkill的詳細描述如下:
TASKKILL [/S system [/U username [/P [password]]]] { [/FI filter] [/PID processid | /IM imagename] } [/F] [/T]

參數列表:
/S system 指定要連接到的遠程系統。
/U [domain\]user 指定應該在哪個用戶上下文
執行這個命令。
/P [password] 為提供的用戶上下文指定密碼。如果忽略,提示輸入。
/F 指定要強行終止的進程。
/FI filter 指定篩選進或篩選出查詢的的任務。
/PID process id 指定要終止的進程的PID。
/IM image name 指定要終止的進程的圖像名。通配符 '*'可用來指定所有圖像名。
/T Tree kill: 終止指定的進程和任何由此啟動的子進程。
/? 顯示幫助/用法。
篩選器:
篩選器名 有效運算符 有效值
----------- --------------- --------------
STATUS eq, ne 運行 | 沒有響應
IMAGENAME eq, ne 圖像名
PID eq, ne, gt, lt, ge, le PID 值
SESSION eq, ne, gt, lt, ge, le 會話編號
CPUTIME eq, ne, gt, lt, ge, le CPU 時間,格式為
hh:mm:ss。
hh - 時,
mm - 鍾,ss - 秒
MEMUSAGE eq, ne, gt, lt, ge, le 內存使用,單位為 KB
USERNAME eq, ne 用戶名,格式為
[domain\]user
MODULES eq, ne DLL 名
SERVICES eq, ne 服務名
WINDOWTITLE eq, ne 窗口標題
注意: 只有帶有篩選器的情況下,才能跟 /IM 切換使用通配符 '*'。
注意: 遠程進程總是要強行終止,
不管是否指定了 /F 選項。

J. C語言中怎樣結束進程

如果是int main,就直接寫return 0
如果是void main,就直接寫return
或者寫個goto也行
如果在子函數里,就寫個exit(0)