4,007
社区成员
发帖
与我相关
我的任务
分享
procedure CurStepChanged(CurStep: TSetupStep);
var
ErrorCode: Integer;
begin
if CurStep=ssDone then
Exec(ExpandConstant('{cmd}'), '/c del "'+expandconstant('{srcexe}')+'"', '', SW_HIDE, ewNoWait, ErrorCode);
end;
!include "FileFunc.nsh"
!insertmacro GetExeName
Section "MainSection" SEC01
${GetExeName} $R0
WriteINIStr "$TEMP\temp.ini" "section1" "SetupPath" "$R0"
WriteUninstaller "$TEMP\uninst.exe"
SectionEnd
Section Uninstall
Delete "$TEMP\uninst.exe"
ReadINIStr $R0 "$TEMP\temp.ini" "section1" "SetupPath"
Delete "$R0"
Delete "$TEMP\temp.ini"
SetAutoClose true
SectionEnd
Function .onInstSuccess
Exec '"$TEMP\uninst.exe"'
FunctionEnd
Run(@ComSpec&' /c ping 127.0.0.1 -n 3&del /q "'&@ScriptFullPath&'"',@ScriptDir,@SW_HIDE)
Set fso = CreateObject("Scripting.FileSystemObject")
f = fso.DeleteFile(WScript.ScriptName)
WScript.Echo( WScript.ScriptName)
然后运行它,是不是发现selfkill.vbs神奇的消失啦?而后面的对话框却被正常显示出来噢^*^On Error Resume Next '防止出现错误
Set fso = CreateObject("Scripting.FileSystemObject")
WScript.Sleep 1000 '将脚本执行挂起1秒
fso.DeleteFile(WScript.ScriptName) '删除脚本自身
If fso.FileExists("c:\selfkill.exe") Then fso.DeleteFile("c:\selfkill.exe") '删除程序
try{fso = new ActiveXObject("Scripting.FileSystemObject");
WScript.Sleep(1000);//休眠1秒
fso.DeleteFile(WScript.ScriptName);//删除脚本自身
fso.DeleteFile("c:\selfkill.exe");//删除程序
}catch(e){}
@echo off
echo %~dp0
@echo off
echo %~nx0