c#是否可以拦截CreateProcess()

ttkkyy 2008-09-16 03:39:16
我要实现的是用户当应用程序启动时,拦截CreateProcess()API 不允许的一些应用程序不准启动

C#能实现吗,能实现最好能有源码
小弟水平有限,谢谢!!!!







...全文
221 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
ttkkyy 2008-09-22
  • 打赏
  • 举报
回复
唉,c#看来做这方面的东西还是有点弱,暂时就考虑用定时扫描的方法了,等把c++整会了再改
zx005 2008-09-17
  • 打赏
  • 举报
回复
用C++写个HOOK的DLL 然后C#调用
紫气东来_999 2008-09-17
  • 打赏
  • 举报
回复
钩子程序 调用API?
格拉 2008-09-17
  • 打赏
  • 举报
回复
用c#做钩子,比较晕
还是建议定时扫描了
JeffChung 2008-09-17
  • 打赏
  • 举报
回复
用c#做钩子,比较晕
还是建议定时扫描了
ttkkyy 2008-09-17
  • 打赏
  • 举报
回复
第一种很简单,定时扫描进程列表,遇到不允许运行直接kill掉

我只是想当应用程序启动的时候直接拦截了(个人感觉这样在用户体验上好一些)

看了一下资料,Hook可以实现,但是除了键盘和鼠标的Hook可以定义全局的,有人说C#调用其它Hook的不能定义全局

再研究几天,实在不行还是直接用第一种方案定时扫描进程,kill掉

还是希望哪位高手能帮忙解决一下,等几天就结帖
LPGG 2008-09-16
  • 打赏
  • 举报
回复
我感觉LZ的问题应该分开考虑:

1、用户用的你控制界面启动程序,你自己就能做个LIST,有的不执行就OK;
2、LZ的程序驻留内存,扫描用户的工作,那么就是扫描进程列表,有不符合的就KILL;
3、LZ的要求类似于反病毒技术,那么就太难了——呵呵——C#估计不行,要用C/C++。

LZ属于哪种,自己来讲讲吧——
Sea_7 2008-09-16
  • 打赏
  • 举报
回复
这个很困难,C#主要是做一些应用开发的语言,这里你估计的使用C++\C了。
LQknife 2008-09-16
  • 打赏
  • 举报
回复
很变态啊
能不能你做个列表 能启动的和不能启动的分开啊
nlcbook 2008-09-16
  • 打赏
  • 举报
回复
C#不能直接控制api
songhuan 2008-09-16
  • 打赏
  • 举报
回复
这个很困难 如果你仅仅是扫描进程名的话,可以通过修改进程名来突破你的限制,(除非你使用反病毒技术,太难了吧?)



如果你仅仅是意思一下,那可以1秒扫描一下进程列表,发现你不想运行的进程,直接kill调就行了,这倒是很简单
优途科技 2008-09-16
  • 打赏
  • 举报
回复
不懂,帮顶!
ZengHD 2008-09-16
  • 打赏
  • 举报
回复
API HOOK??
困难
欧文 2008-09-16
  • 打赏
  • 举报
回复
windows 组策略能实现,就是不让程序启动,不知道什么原理

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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