欢迎光临:
  
  非常感谢您光临枕善居。本站是一个免费的基于VB,VB.NET源代码交流的平台,为大家提供优质的专业的源代码,如果您有需要,本站可以帮助在业余时间里给您寻找代码。当然,如果您有好的代码也可以在本站发布,共享给大家。
专业VB和.NET源码、编程开发教程、图标资源、USB电脑遥控器、智能家电控制开关....更多东东请进入我的淘宝小店--->
VB及.NET新源码2011(3DVD,控件+资源) 智能多路控制(串口编程开关) 带源码!


05-04
14

安全自己删除自己

这个代码主要利用了批处理功能,可以安全的删除自己。

Private Sub Form_Load()
    '建立批处理
    Open App.Path & "\a.bat" For Output As #1
    '"@echo off" 不显示执行过程
    Print #1, "@echo off"
    Print #1, "sleep 100"
    'a.bat 删除指定文件
    Print #1, "del " & App.EXEName + ".exe"
    'a.bat 删除自身
    Print #1, "del a.bat"
    Print #1, "cls"
    Print #1, "exit"
    Close #1

    Shell App.Path & "\a.bat", vbHide
    End
End Sub


相关日志:
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
评论: 5 | 引用: 0 | 查看次数: 6694

回复回复lmgz [2006-07-24 17:43:07 |  | del]
不支持长文件名[loo]
回复回复yyfearth [2006-07-11 18:56:51 |  | del]
记得原来这里有一个这样的类似代码,但不支持中文现在我解决了这个问题
这个函数用于获得自身文件名
因为自身文件名不一定是“.exe”文件,故以下代码优于App.EXEName + ".exe"

Private Function FullAppName() As String
    Dim modName As String * 256
    Dim i As Long
    i = GetModuleFileName(App.hInstance, modName, Len(modName))
    i = InStr(1, modName, Chr(0)) - 1
    FullAppName = Left(modName, i)
    'MsgBox i & vbLf & Len(FullAppName) & vbLf & FullAppName
    If LCase(Right(FullAppName, 7)) = "vb6.exe" Then MsgBox "请不要在VB的IDE环境中执行。", vbExclamation: End
End Function
回复回复欢迎光临 [2005-08-04 16:05:03 |  | del]
you!
我的机器是winxp+sp1,测试正常!
[哈哈,我还在论坛上发贴询问如何让运行将自身复制到指定位置呢!,看到这篇文章后恍然大悟,哈哈,谢谢!!!]
回复回复Mndsoft [2005-04-20 20:33:31 |  | del]
可能有吧,试试啊。[smile]
回复回复狂人 [2005-04-20 20:21:14 |  | del]
[confused][confused]

Print #1, "sleep 100"

DOS 下有 sleep 这样的命令吗?
发表评论
您没有权限发表评论!