16个回答
展开全部
提供点思路,由浅入深
1)在form的unload事件中添加代码cancel=1,但是能被ctrl+alt+del关闭。
2)使用wsh或者API将注册表中HKCU\Software\Microsoft\Currentversion\Policies\System\DisableRegistryTools 的值改为1,这样任务管理器就失效了,但是仍能被高级点的软件关掉(比如超级兔子之类)
3)隐藏进程,比较正统的方法
4)即时改变PID,但是能被改名字的API改名后杀掉
5)注入进程,像病毒靠拢
6)最好开2个进程,双保险,每个进程在被杀掉后由另一个进程重新打开,随机重命名等等
1)在form的unload事件中添加代码cancel=1,但是能被ctrl+alt+del关闭。
2)使用wsh或者API将注册表中HKCU\Software\Microsoft\Currentversion\Policies\System\DisableRegistryTools 的值改为1,这样任务管理器就失效了,但是仍能被高级点的软件关掉(比如超级兔子之类)
3)隐藏进程,比较正统的方法
4)即时改变PID,但是能被改名字的API改名后杀掉
5)注入进程,像病毒靠拢
6)最好开2个进程,双保险,每个进程在被杀掉后由另一个进程重新打开,随机重命名等等
展开全部
把窗体关闭按钮隐藏,不在任务拦里显示,最后将进程也隐藏(App.TaskVisible = False),不就OK了吗。
我的这个办法应该可以啊,我就不明白为什么要搞得那么复杂。
1、窗体上没有关闭按钮,怎么关闭程序。
2、任务拦里找不到你运行的程序,怎么关闭程序。
3、结束进程里也找不到你运行的程序,怎么关闭程序。
请问在哪还可以结束应用程序?
我的这个办法应该可以啊,我就不明白为什么要搞得那么复杂。
1、窗体上没有关闭按钮,怎么关闭程序。
2、任务拦里找不到你运行的程序,怎么关闭程序。
3、结束进程里也找不到你运行的程序,怎么关闭程序。
请问在哪还可以结束应用程序?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
结束进程也结束不了,怎么做啊?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
v
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Form_Load()
Me.Visible = False
App.TaskVisible = False
Me.Caption = "程序1"
Timer1.Interval = 1
End Sub
Private Sub Timer1_Timer()
If FindWindow(vbNullString, "程序2") = 0 Then Shell "程序2.exe", vbNormalFocus
End Sub
'用以上代码生成“程序1.exe”,用来启动程序2
'俩个程序放在同一个目录下
'用以下代码生成“程序2.exe”,如果程序1被关,重新启动程序1
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Form_Load()
Me.Caption = "程序2"
Timer1.Interval = 1
End Sub
Private Sub Timer1_Timer()
If FindWindow(vbNullString, "程序1") = 0 Then Shell "程序1.exe", vbNormalFocus
End Sub
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Form_Load()
Me.Visible = False
App.TaskVisible = False
Me.Caption = "程序1"
Timer1.Interval = 1
End Sub
Private Sub Timer1_Timer()
If FindWindow(vbNullString, "程序2") = 0 Then Shell "程序2.exe", vbNormalFocus
End Sub
'用以上代码生成“程序1.exe”,用来启动程序2
'俩个程序放在同一个目录下
'用以下代码生成“程序2.exe”,如果程序1被关,重新启动程序1
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Form_Load()
Me.Caption = "程序2"
Timer1.Interval = 1
End Sub
Private Sub Timer1_Timer()
If FindWindow(vbNullString, "程序1") = 0 Then Shell "程序1.exe", vbNormalFocus
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
做成系统服务程序,系统启动时会自动运行。除非停掉服务,否则无法结束此程序。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
VB ms弄不成。IceSword基本无法绕过,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询