您当前的位置:首页 > 互联网教程

怎么用c语言结束某进程

发布时间:2025-05-14 10:52:06    发布人:远客网络

怎么用c语言结束某进程

一、怎么用c语言结束某进程

1、首先看你的程序是在什么操作系统下面运行:

2、例如:linux你可以使用系统命令ps,将ps工具的结果通过管道或者文件获得需要结束的进程的pid,然后用kill命令来杀死进程(使用system函数来调用系统命令)

3、windows可以同上,但使用的命令不相同,则需要你去查下windows api

4、另外,如果你你要控制的程序可以接收标准windows消息,也可以通过进程名来获得进程窗口的句柄,然后发消息,让进程自己结束。

二、c语言程序工作流程

病毒这种程序,不是难,是了解少,要是从事这行的就熟的很。其中最重要的是感染部分的代码。给你说一些病毒常用的技术吧:代码重定位,两行汇编就可以实现;定位kernel32.dll基址,然后找到LoadLibrary和GetProcAddress,找到了这两个,其他模块和API随便调用了。一般流程:遍历盘符,遍历文件夹,依次打开文件,判断文件头标志,一般是开头"MZ",Dos插桩后的"PE",都满足就继续,否则不是PE文件;然后以读写权限打开,这时可能权限不够,所以你给的那个代码才要提升权限;接下来就是写入病毒字节码,节间隙空间够就插入,不够就新建一个节;最后是关键,重构PE的节表、代码段长度等等PE结构中的一些标志。编写的话,最好用汇编,C也行,但要压缩体积,病毒都很小;知识方面,首先要了解windows上的PE文件结构,linux上的就是ELF文件结构;然后,win编程,进程,线程什么的;最后就是实践了。补充一下:编写和调试汇编程序比较麻烦,需要点耐心。

三、C语言编译执行的全过程是怎样的

1、用编译原理的话来说呢,分成词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成这么几个阶段。

2、对c语言来说,一般只需要知道分成编译和连接两个阶段,编译阶段将源程序(*.c)转换成为目标代码(,一般是obj文件,至于具体过程就是上面说的那些阶段),连接阶段是把源程序转换成的目标代码(obj文件)与你程序里面调用的库函数对应的代码连接起来形成对应的可执行文件(exe文件)。