| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 828 人关注过本帖
标题:求助:如何用vC实现禁止某些程序的安装或运行
只看楼主 加入收藏
yizishashou
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-10-2
结帖率:100%
收藏
 问题点数:0 回复次数:7 
求助:如何用vC实现禁止某些程序的安装或运行
各位高手
   向大家求助,如何用vC实现禁止某些程序的安装或运行
   只是禁止某些特定的程序,其它程序不会受影响
   小弟先谢了
搜索更多相关主题的帖子: 运行 
2008-10-02 17:51
yizishashou
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-10-2
收藏
得分:0 
1
各位高手都给提点建议吧
2008-10-03 12:29
yizishashou
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-10-2
收藏
得分:0 
2
各位高手给个思路也行
2008-10-04 20:24
yizishashou
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-10-2
收藏
得分:0 
3
继续关注
2008-10-06 21:47
koma0769
Rank: 2
等 级:论坛游民
帖 子:24
专家分:20
注 册:2008-10-8
收藏
得分:0 
思路
1、查找进程句柄

2、判断是否为设定的字符串相同,如果是则结束该进程

[[it] 本帖最后由 koma0769 于 2008-10-8 17:13 编辑 [/it]]
2008-10-08 17:06
koma0769
Rank: 2
等 级:论坛游民
帖 子:24
专家分:20
注 册:2008-10-8
收藏
得分:0 
写了两个函数,纯API的大家参考下吧~~
//结束指定的进程用MyKillProcess(进程名称) 如MyKil..("qq.exe")
//第二个函数可以批量结束掉指定进程名称,方面别的位置调用
         void MyKillProcess(LPCTSTR lpszFileList)
    {
        CStringArray szProcessList;
        SplitString(lpszFileList, _T(","), szProcessList, FALSE);
        if(szProcessList.GetSize()==0)
            return;
        
        HANDLE           hProcess;
        HANDLE         hProcessSnap = NULL;
        BOOL           bRet      = FALSE;
        PROCESSENTRY32 pe32      = {0};
        CString s = _T("");
        
        //  建立系统信息快照
        hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
        
        if (hProcessSnap == INVALID_HANDLE_VALUE)
            return;
        
        //  设置大小 sizeof(PROCESSENTRY32)
        pe32.dwSize = sizeof(PROCESSENTRY32);
        
        //  遍历进程
        if (Process32First(hProcessSnap, &pe32))
        {
            do
            {
                s.Format(_T("%s"), pe32.szExeFile);
                for(int i=0; i<szProcessList.GetSize(); i++)
                {
                    if((szProcessList.GetAt(i))==0)    // 如果找到指定进程
                    {
                        hProcess = OpenProcess(PROCESS_TERMINATE, FALSE, pe32.th32ProcessID);
                        TerminateProcess(hProcess, 0);
                    }
                }
            }
            while (Process32Next(hProcessSnap, &pe32));
        }
        CloseHandle (hProcessSnap);
    }
    
    void KillDemo()
    {
        MyKillProcess(_T("taskmgr.exe,maxthon.exe,cmd.exe,nod32.exe,360safe.exe"));
    }
2008-10-08 17:12
yizishashou
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-10-2
收藏
得分:0 
4
谢拉,那阻止某种程序的安装呢?
2008-10-08 20:23
koma0769
Rank: 2
等 级:论坛游民
帖 子:24
专家分:20
注 册:2008-10-8
收藏
得分:0 
给他一个普通用户的权限就可以了呀
2008-10-10 08:58
快速回复:求助:如何用vC实现禁止某些程序的安装或运行
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019148 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved