请问CreateProcess打开的IE窗口应该怎么关闭?

yi_yoo_ 2016-11-14 06:37:22
我把CreateProcess返回的句柄用TerminateProcess试图结束但是返回没有权限,提权之后依然如此。IE版本是IE11。
请问该怎么结束特定IE窗口?
...全文
446 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2016-11-17
  • 打赏
  • 举报
回复
引用 22 楼 RokrJyy 的回复:
[quote=引用 21 楼 BeanJoy 的回复:] [quote=引用 19 楼 RokrJyy 的回复:] 我的代码,是哪里写错了?
	USES_CONVERSION;
	CString CmdLine;
	static int i = 0;
	CmdLine = L"explorer.exe " + m_vecURL[i];
	LPTSTR Cmd = (LPTSTR)(LPCTSTR)CmdLine;
	CreateProcess(NULL, Cmd, NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi);
	EnablePrivilege();
	CString pid;
	pid.Format(L"%d", pi.dwProcessId);
	CString strcmd = L"cmd /c taskkill /F /PID " + pid;
	WinExec(T2A(strcmd), SW_HIDE);
	TerminateProcess(handle, 0);
IE的进程名不是iexplorer.exe? explorer.exe是Windows程序管理器或者文件资源管理器。[/quote] 真是这个原因,感谢![/quote] 张冠李戴类低级错误。
yi_yoo_ 2016-11-16
  • 打赏
  • 举报
回复
TerminateProcess(pi.hProcess, 0);
yi_yoo_ 2016-11-16
  • 打赏
  • 举报
回复
我的代码,是哪里写错了?
	USES_CONVERSION;
	CString CmdLine;
	static int i = 0;
	CmdLine = L"explorer.exe " + m_vecURL[i];
	LPTSTR Cmd = (LPTSTR)(LPCTSTR)CmdLine;
	CreateProcess(NULL, Cmd, NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi);
	EnablePrivilege();
	CString pid;
	pid.Format(L"%d", pi.dwProcessId);
	CString strcmd = L"cmd /c taskkill /F /PID " + pid;
	WinExec(T2A(strcmd), SW_HIDE);
	TerminateProcess(handle, 0);
赵4老师 2016-11-16
  • 打赏
  • 举报
回复
可能还需要以管理员身份运行
赵4老师 2016-11-16
  • 打赏
  • 举报
回复
引用 16 楼 RokrJyy 的回复:
[quote=引用 15 楼 zhao4zhong1 的回复:] 楼主是不是把CreateProcess返回的句柄和PID弄混了?
PROCESS_INFORMATION结构体里的dwProcessId不是PID吗? TerminateProcess时用的句柄是PROCESS_INFORMATION里的hProcess。 是哪里用错了吗[/quote] 由此看来你没错。 试试用pskill
yi_yoo_ 2016-11-16
  • 打赏
  • 举报
回复
引用 15 楼 zhao4zhong1 的回复:
楼主是不是把CreateProcess返回的句柄和PID弄混了?
PROCESS_INFORMATION结构体里的dwProcessId不是PID吗? TerminateProcess时用的句柄是PROCESS_INFORMATION里的hProcess。 是哪里用错了吗
赵4老师 2016-11-16
  • 打赏
  • 举报
回复
楼主是不是把CreateProcess返回的句柄和PID弄混了?
BeanJoy 2016-11-16
  • 打赏
  • 举报
回复
taskkill /pid pid
你手动在cmd下执行也不能关闭ie?我win7系统测试没问题。是不是你装了杀毒软件之类的安全防护软件?
yi_yoo_ 2016-11-16
  • 打赏
  • 举报
回复
引用 21 楼 BeanJoy 的回复:
[quote=引用 19 楼 RokrJyy 的回复:] 我的代码,是哪里写错了?
	USES_CONVERSION;
	CString CmdLine;
	static int i = 0;
	CmdLine = L"explorer.exe " + m_vecURL[i];
	LPTSTR Cmd = (LPTSTR)(LPCTSTR)CmdLine;
	CreateProcess(NULL, Cmd, NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi);
	EnablePrivilege();
	CString pid;
	pid.Format(L"%d", pi.dwProcessId);
	CString strcmd = L"cmd /c taskkill /F /PID " + pid;
	WinExec(T2A(strcmd), SW_HIDE);
	TerminateProcess(handle, 0);
IE的进程名不是iexplorer.exe? explorer.exe是Windows程序管理器或者文件资源管理器。[/quote] 真是这个原因,感谢!
BeanJoy 2016-11-16
  • 打赏
  • 举报
回复
引用 19 楼 RokrJyy 的回复:
我的代码,是哪里写错了?
	USES_CONVERSION;
	CString CmdLine;
	static int i = 0;
	CmdLine = L"explorer.exe " + m_vecURL[i];
	LPTSTR Cmd = (LPTSTR)(LPCTSTR)CmdLine;
	CreateProcess(NULL, Cmd, NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi);
	EnablePrivilege();
	CString pid;
	pid.Format(L"%d", pi.dwProcessId);
	CString strcmd = L"cmd /c taskkill /F /PID " + pid;
	WinExec(T2A(strcmd), SW_HIDE);
	TerminateProcess(handle, 0);
IE的进程名不是iexplorer.exe? explorer.exe是Windows程序管理器或者文件资源管理器。
encoderlee 版主 2016-11-15
  • 打赏
  • 举报
回复
向目标IE窗口发送WM_CLOSE或WM_QUIT消息
赵4老师 2016-11-15
  • 打赏
  • 举报
回复
引用 4 楼 RokrJyy 的回复:
[quote=引用 3 楼 zhao4zhong1 的回复:]
WinExec("cmd /c taskkill /F /IM iexplore.exe",SW_HIDE):
这样会把所有IE窗口都关闭吧,我只想关闭打开的某个特定IE。[/quote] 记住CreateProcess返回的PID 然后 WinExec("cmd /c taskkill /F /PID 刚记住的PID",SW_HIDE):
yi_yoo_ 2016-11-15
  • 打赏
  • 举报
回复
引用 5 楼 CharlesSimonyi 的回复:
右键,管理员权限运行你的程序看看
也不行,UAC执行级别就是requireAdministrator。 每次TerminateProcess都是返回5,拒绝访问。
encoderlee 版主 2016-11-15
  • 打赏
  • 举报
回复
右键,管理员权限运行你的程序看看
yi_yoo_ 2016-11-15
  • 打赏
  • 举报
回复
引用 3 楼 zhao4zhong1 的回复:
WinExec("cmd /c taskkill /F /IM iexplore.exe",SW_HIDE):
这样会把所有IE窗口都关闭吧,我只想关闭打开的某个特定IE。
赵4老师 2016-11-15
  • 打赏
  • 举报
回复
WinExec("cmd /c taskkill /F /IM iexplore.exe",SW_HIDE):
PepperEggFriedRice 2016-11-15
  • 打赏
  • 举报
回复
获取窗口句柄并关闭?
yi_yoo_ 2016-11-15
  • 打赏
  • 举报
回复
其它程序可以结束,IE却关不了,这该如何解决啊
yi_yoo_ 2016-11-15
  • 打赏
  • 举报
回复
刚才发现系统开了UAC但是一直没有弹窗,这是什么情况,重装的虚拟机也这样。
赵4老师 2016-11-15
  • 打赏
  • 举报
回复
加载更多回复(3)
XueTr( 简称XT)是最近崛起的一款功能强大的反内核(Anti-Rootkit)工具。 反内核工具是手工杀毒的利器,可以轻松查出系统中隐藏的进程如木马等并可以轻松结束之,当电脑感染病毒,杀毒软件被劫持无法打开时,就需要用它们来手工杀毒。 XueTr于去年年末首发于卡饭辅助区,短短几个月,更新了数十个版本,已成为一款超越IceSword、狙剑的杀毒利器。它以稳定、兼容性强受到了很多坛友的欢迎。目前最新版本为0.30,作者于2009年11月22日最新更新。 目前,国内的反内核工具中的五虎将:IceSword(冰刃)、 Wsyscheck 、Snipesword(狙剑)、XueTr、天琊(Superkill)。其中的IceSword(冰刃)、 Wsyscheck 、Snipesword(狙剑)已经停止了开发,并且不支持最新的windows 7系统,天琊也有一段时间没有更新了,而且以后将会走收费共享软件的路线。XueTr是目前唯一还在不断更新、完全免费并且支持windows 7系统的反内核工具。 与冰刃相比,XueTr的优势在于:1.增强了自我保护能力,不会被病毒屏蔽,冰刃虽然声名赫赫,但是现在已经有很多病毒可以屏蔽它,导致得将冰刃改名才能启动,甚至改名都不行。2.超越冰刃的反隐藏和反删除能力,使隐藏进程无所遁形。3.强力文件删除能力并且可以阻止被删除文件再生。 XueTr具体功能介绍: 1.进程、线程、进程模块、进程窗口信息查看,杀进程、杀线程、卸载模块等功能 2.内核驱动模块查看,支持内核驱动模块的内存拷贝 3.SSDT、Shadow SSDT、FSD、IDT信息查看,并能检测和恢复ssdt hook和inline hook 4.CreateProcess、CreateThread、LoadImage、Shutdown、Lego等Notify Routine信息查看,并支持对这些Notify Routine的删除 5.端口信息查看,目前不支持2000系统 6.查看消息钩子 7.内核模块的iat、eat、inline hook、patchs检测和恢复 8.磁盘、卷、键盘、网络层等过滤驱动检测,并支持删除 9.注册表编辑 10.进程iat、eat、inline hook、patchs检测和恢复 11.文件系统查看,支持基本的文件操作 12.查看(编辑)IE插件、SPI、启动项、服务、Host文件、映像劫持 13.ObjectType Hook检测和恢复,提供了禁止创建进程,禁止创建线程,禁止创建文件,禁止创建注册表,禁止加载模块,禁止消息钩子注入,禁止关机重启等。对付强劲病毒可以起到大作用。 XueTr的主程序:蓝色的小图标,毫不张扬,给人一种温柔的感觉,属于“温柔杀手”。 下面简单介绍它的几个使用实例: 一. 删除顽固文件。你是否遇到这种情况,想要删除某个文件,却又弹出对话框显示“无法删除”,看看XueTr的删除效果。 这是一个免疫文件夹,由于具有系统属性,所以普通方法无法删除,但是XueTr则轻松将它清除了。XueTr还可以删除超长畸形文件和正在使用中的文件,并且具有删除后阻止文件再生的功能,这对于删除某些顽固病毒更为实用。 二. 查看隐藏进程。XueTr可以轻松发现隐藏的系统进程,当然,轻松结束它们也不在话下。 XueTr的工具配置:更多的XueTr功能介绍,请到卡饭论坛或者到官方网站。这里不再多做介绍。 软件名称:XueTr 软件性质:安全工具 大小: 256070 字节 修改时间: 2009年12月9日, 19:12:03 MD5: 8177E75AA9557049FF110CD65F274112 SHA1: 4DA5A27AAEF8A60C04FE51CA05CD35B8312466A5 CRC32: 23C3EA60

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧