islive.cpp
来自「此程序为在unix环境C++程序」· C++ 代码 · 共 38 行
CPP
38 行
/**************************************************
函数功能: 检测进程是否已启动
输入参数: const char *pProcName 检测进程名称
输出参数: char *pRetMsg 返回信息
返回值: >=0成功,<0失败
***************************************************/
int IsAlive(const char *pProcName, char *pRetMsg)
{
int iNum = 0;
FILE *pPipe;
char sShellCmd[100];
char sBuf[100];
memset(sShellCmd, 0, sizeof(sShellCmd));
sprintf(sShellCmd, "ps -eo comm|grep -c \"%s\"", pProcName);
if ((pPipe = popen(sShellCmd, "r")) == NULL)
{
strcpy(pRetMsg, "popen error!");
return -1;
}
memset(sBuf, 0, sizeof(sBuf));
fgets(sBuf, 99, pPipe);
pclose(pPipe);
iNum = atoi(sBuf);
if (iNum > 0)
{
sprintf(pRetMsg, "program %s is already running, stop it first!", pProcName);
}
else if (iNum < 1)
{
sprintf(pRetMsg, "program %s is not running, start it first!", pProcName);
}
return iNum;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?