有些奢侈地用SYSTEM身份

博主修改代码使ph.exe在Administrator组用户下以SYSTEM身份运行,能多查看部分进程信息。在XP和2000系统下进行服务操作,起初用sc.exe,后因2000无此程序改用代码。还使用net stop、rundll32.exe等,同时发现以SYSTEM身份运行的一些Bug及保存进程列表的异常问题。
照着bingle的代码,改了一下自己用,用来搭配LLYF ProcessHelper,现在ph.exe可以以SYSTEM身份运行了,至少在Administrator组用户下可以以SYSTEM身份运行了,其实也就是能多看到其它两三个进程的命令行和模块列表,至于kavsvc.exe和kav.exe还是不行的,也真是厉害,能保得这么严,当然IceSword的进程也打不开。
现在已经渐渐地习惯于XP的华丽界面了,只要不用VC,写程序都跑到XP下去,于是开始的时候,用sc.exe来start一个服务,用得好好的,后来跑到2000下,发现2000没有sc.exe这个程序,总之不想再另外加个依赖程序,于是只好自己用代码来StartService,可是为了传递参数费了点劲,原来在命令行如果一个参数内有空格,就要加双引号,现在在一个字符串里,是不用引号了,害得我又上网瞎整了一个小时。
其它的,用到了net stop,还有rundll32.exe,这些应该是2000/XP/2003系统都有的了,不过我想还是得找机会自己写代码来运作更可靠一点。于是,暂停服务,删除服务也不过是调用几个API,以前(还不知道有sc.exe的时候)写过一个对服务进行操作的程序,正好都搬来用用。rundll32也不过是调用DLL里的函数,自己LoadLibrary再GetProcAddress来调用一下就成了。
另外,偶然地发现了其它的Bug,以SYSTEM身份运行以后,在保存文件对话框中,不能直接到达桌面之类的特殊文件夹了,说什么引用位置错误,大概这个和进程的运行身份有关吧,暂时还想不到解决办法。还有,自从加了获取进程命令行之后,在保存进程列表的时候,总是会异常。原来是因为有些进程根本不能获得命令行,所以在ListView的最后那栏还是没填东西进去,但在保存时,还是会试图读些东西出来,就会Out of range了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值