کد:
:: **** By n1maSSTO **** & My Friends MR.Shirin Zaban,Borhan,Hunter,H_F_G!****
@SETLOCAL EnableExtensions
@SETLOCAL DisableDelayedExpansion
@ECHO OFF
:: ****** Important Variables ******
Set Config="%APPDATA%\Folderlock\Configuration.INI"
Set OO="%APPDATA%\Folderlock"
Set iFile="%APPDATA%\Folderlock\Alpha.exe"
Set CFile="%APPDATA%\Folderlock\Blaze.exe"
Set iCon="%APPDATA%\Folderlock\Icon.ico"
:: ****** Customization ******
Title *** n1ma's Folder Lock***
MODE CON: COLS=44 LINES=16
Color 1E
:: ****** OS Compability Check ******
ver|find "NT">nul&&(
cls
echo.
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ ؛
echo ؛ Windows 7/Vista/Xp Only ؛
echo ؛ ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
ping 127.0.0.1 -n 4 >nul
goto:eof
)
:: ****** Parameter Section ******
IF [%1]==[] Goto Check
IF %1==Install (
Set COM=^echo ^؛ ** Done Installation!! ** ^؛
Set CB=^Goto:eof
Echo APAN>SS.TXT
Goto COM
)
IF %1==RegCall (
Echo %2>%OO%\SA.TXT
SET /p VAR= <%OO%\SA.TXT
Set REGRD=^Goto PreOp
Set CB=^Goto:eof
)
:: ****** Checking For Pre-Installation ******
:Check
IF EXIST %iFile% (
IF Exist %OO%\SS.TXT (
Echo 'RightClick:NO'> %Config%
Echo 'MasterPassword:NO'>> %Config%
Cacls %Config% /e /c /d %Username%>nul
Del %OO%\SS.TXT /Q >nul
)
IF Exist %Config% (
goto ExpandConfig >nul
) Else (
goto CInstall >nul
)
) ELSE (
goto Start >nul
)
:: ****** Configure By Configurationn File ******
:ExpandConfig
Cacls %Config% /e /c /g %Username%:f
FINDSTR "\<'RightClick:NO'\>" %Config%
IF %ERRORLEVEL% EQU 0 (
SET RCStatus=NO
Set RC=^echo ؛ ^(S^).Set Up To RightClick Menu ؛
Set RCMARK=S
Set RCCM=RightClickPrep
) ELSE (
SET RCStatus=YES
Set RC=^echo ؛ ^(R^).Remove From RightClick Menu ؛
Set RCMARK=R
Set RCCM=RightClickRM
)
CLS
FINDSTR "\<'MasterPassword:NO'\>" %Config%
Set MPERR=%ERRORLEVEL%
CLS
IF %MPERR% EQU 0 (
SET MPStatus=NO
Set MPR=MPCreate
Set MP=^echo ؛ ^(C^).Create Master Password ؛
Cacls %Config% /e /c /d %Username%>nul
%REGRD%
) ELSE (
SET MPStatus=YES
Set MPR=MPChange
Set MP=^echo ؛ ^(C^).Change/Remove Master Password ؛
Cacls %Config% /e /c /d %Username%>nul
Goto MPRequest
)
Cacls %Config% /e /c /d %Username%>nul
Goto Menu
:: ******* Reinstall Section ******
:CInstall
cls
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Software Installation is Corrupted. ؛
echo ؛ ؛
echo ؛ You'll need to Reinstall ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
echo Press Enter To Continue. &pause>nul &goto start
:: ****** Getting Started! ******
:Start
REM Nothing To Say!! LOL!!
::****** Installation Menu ******
:Install
title Folderlock Installation!
cls
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Application Needs to Install ؛
echo ؛ ؛
echo ؛ Itself. Confirm? (Y/N) (Y=Yes,N=No) ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
Set "UserInp=0"
Set /p "UserInp= "
If /i %UserInp%==Y goto InstallNow
If /i %UserInp%==N goto:eof
goto Install
:: ****** Copy Files ******
:InstallNow
MD %OO%
Set NAME=%~nx0
Copy "%~f0" %OO% /Y >nul
Copy "%~dp0Icon.ico" %OO% >nul
Copy "%~dp0Blaze.exe" %OO% >nul
Ren %OO%\%NAME% "Alpha.exe"
:: ****** Adding to RightClick Menu *******
:RightClickAsk
cls
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Add Software To Right Click ؛
echo ؛ ؛
echo ؛ Menu? (Y/N) ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
Set "UserInp=0"
Set /p "UserInp= "
set UserInp=%UserInp:~0,1%
If /i %UserInp%==Y Set RCStatus=YES& Goto RightClick
If /i %UserInp%==N Set RCStatus=NO& FCONFIG
goto RightClickAsk
:RightClick
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Alpha" /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Alpha" /ve /d "Run Folderlock" /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Alpha" /v Icon /t REG_SZ /d %iCon% /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Alpha\Command" /ve /d "%iFile% %%1" /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\shell\Alpha" /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\shell\Alpha" /ve /d "Lock/Unlock by Folderlock" /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\shell\Alpha" /v Icon /t REG_SZ /d %iCon% /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\shell\Alpha\Command" /ve /d "%iFile% RegCall \"%%1\"" /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\Alpha" /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\Alpha" /ve /d "Lock/Unlock by Folderlock" /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\Alpha" /v Icon /t REG_SZ /d %iCon% /f >nul
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\Alpha\Command" /ve /d "%iFile% RegCall \"%%1\"" /f >nul
%RCDES%
:: ****** First Configuration ******
:FConfig
Echo 'RightClick:%RCStatus%'> %Config%
Echo 'MasterPassword:NO'>> %Config%
Cacls %Config% /e /c /d %Username%>nul
:: ****** Installation MSG ******
:DoneIns
cls
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Installation Completed! ؛
echo ؛ ؛
echo ؛ Press Enter To Continue ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
pause>nul&goto Check
:: ******* Request Master Password *******
:MPRequest
Cls
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Enter Your Master Password ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
set/pPASS=
If not Defined PASS goto MPRequest
Cacls %Config% /e /c /g %Username%:f>nul
Attrib -r -h -s %Config% >nul
FINDSTR "\<'MasterPassword:%PASS%'\>" %Config%
IF %ERRORLEVEL% EQU 0 (
Cacls %Config% /e /c /d %Username%>nul
Set MPStatus=%PASS%
%REGRD%
CLS
Goto Menu
) ELSE (
Cacls %Config% /e /c /d %Username%>nul
Goto MPFail
)
:MPFail
cLS
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Entered Password Is Not Correct ؛
echo ؛ ؛
echo ؛ Press Enter To Try Again ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
Pause>nul &goto MPRequest
:: ****** Configure\ReConfigure Self ******
:Config
Cacls %Config% /e /c /g %Username%:f>nul
Attrib -r -h -s %Config% >nul
Del %Config% /Q /A
Echo 'RightClick:%RCStatus%'> %Config%
Echo 'MasterPassword:%MPStatus%'>> %Config%
Cacls %Config% /e /c /d %Username%>nul
goto COM
:: ****** Master Password ******
:MPCreate
Cls
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Create Your Own Master Password ؛
echo ؛ ؛
echo ؛ Enter It Down Below ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
set/pMPASS=
If not Defined MPASS goto MPCreate
Set MPStatus=%MPASS%
Set COM=^echo ^؛ ** Master Password Created!! ** ^؛
Goto CONFIG
:: ****** Change Master Password ******
:MPChange
cls
ECHo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ (R). Remove Master Password ؛
echo ؛ ؛
echo ؛ (C). Change Master Password ؛
echo ؛ ؛
echo ؛ #### Select and enter one ؛
echo ؛ ؛
echo ؛ of the above options #### ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
set/pPASS=
If /i %PASS%==R (
Set MPStatus=NO
Set COM=^echo ^؛ ** Master Password is Removed!! ** ^؛
Set MPR=MPCreate
Set MP=^echo ؛ ^(C^).Create Master Password ؛
Goto CONFIG
)
If /i %PASS%==C goto MPChangeMP
goto MPChange
:: ****** Change Master Password ******
:MPChangeMP
cls
ECHo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ To Change Your Master Password ؛
echo ؛ ؛
echo ؛ Enter Your New Master Password ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
set/pPASS=
If not Defined PASS goto MPChange
Set MPStatus=%PASS%
Set MPR=MPChange
Set MP=^echo ؛ ^(C^).Change/Remove Master Password ؛
Set COM=^echo ^؛ ** Master Password Changed!! ** ^؛
Goto CONFIG
:: ****** Program's Menu ******
:Menu
MODE CON: COLS=48 LINES=19
cls
echo.
echo ةحححححححححححححححححححححححححححححححححححححححححح»
echo ؛ ** Lock Your Folder Menu ** ؛
echo جحححححححححححححححححححححححححححححححححححححححححح¹
echo ؛ ؛
echo ؛ (L).Lock/Unlock My Folder ؛
%MP%
%RC%
echo ؛ (N).Uninstall Application ؛
echo ؛ (A).About this program ؛
echo ؛ (X).Exit ؛
echo ؛ ؛
echo ؛ ###################### ؛
echo ؛ ؛
echo ؛ Select One of above options then ؛
echo ؛ Type L,C,%RCMARK%,A,N or X and press Enter ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححححححح¼
Set "UserInp=0"
Set /p "UserInp= "
MODE CON: COLS=44 LINES=16
If /i %UserInp%==L goto Alpha
if /i %UserInp%==C goto %MPR%
if /i %UserInp%==%RCMARK% goto %RCCM%
if /i %UserInp%==N goto Uninstall
if /i %UserInp%==A goto ABOUT
if /i %UserInp%==X goto:eof
goto Menu
:: ****** Removing From RightClick Menu *******
:RightClickRM
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Alpha" /f >nul
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\shell\Alpha" /f >nul
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\Alpha" /f >nul
Set COM=echo ؛ ** Operation Succeeded !! ** ؛
SET RCStatus=NO
Set RC=^echo ؛ ^(S^).Set Up To RightClick Menu ؛
Set RCMARK=S
Set RCCM=RightClickPrep
Goto CONFIG
:: ****** ADDING To RightClick Menu *******
:RightClickPrep
Set RCDES=^Goto Config
Set COM=^echo ^؛ ** Operation Succeeded !! ** ^؛
SET RCStatus=YES
Set RC=^echo ؛ ^(R^).Remove From RightClick Menu ؛
Set RCMARK=R
Set RCCM=RightClickRM
Goto RightClick
:: ****** Modes ******
:Alpha
cls
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Drag and drop your folder to this ؛
echo ؛ ؛
echo ؛ window, Then Press Enter ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
set/pVAR= &goto prm
:: ****** Distinguish File From Folder ******
:PRM
if not Defined VAR goto alpha
FOR %%i IN (%VAR%) DO IF EXIST %%~si\NUL Goto PreOP
CLS
ECHo.
ECHo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Procces Failed!! Invalid Path. ؛
echo ؛ ؛
echo ؛ Notice That Only Folders are allowed ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
Echo Press Enter To Try Again. &Pause>nul&goto alpha
:: ****** SPAAAAAAAAAAAAAAAAAAAAAM! ******
:PreOp
Set VAR=%VAR:"=%
%CFile% "DETECT" "%VAR%"
Set COM=^echo ^؛ ** Completed!! ** ^؛
Goto COM
:: ****** Fail Section ******
:FAIL
ECHo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ Proccess Failed ! ؛
echo ؛ ؛
echo ؛ Unknown Error Occured !! ؛
echo ؛ ؛
echo ؛ Report This To The Developer!!! ؛
echo ؛ ؛
echo ؛ Sorry!!!! ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
Echo Press Enter To Go Back To Menu & pause>nul&goto Menu
::: ****** Second Menu ******
:COM
cls
echo.
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ ؛
%COM%
echo ؛ ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
ping 127.0.0.1 -n 5 >nul
%CB%
goto Menu >nul
:: ****** About Developers ******
:ABOUT
MODE CON: COLS=50 LINES=18
cls
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ This Program File Was Designed By ؛
echo ؛ ؛
echo ؛ n1maSSTO ^& Mr.Shirin Zaban! ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
echo.
echo +------------+
echo // LOCK A FOLDER ! For PC Lovers!! VERSION 2.1
echo +----------+
echo.
echo Copyright © 2012 n1maSSTO. All Rights Reserved.
echo.
Echo Press Enter To Continue & pause>nul&goto Menu
:: ****** Uninstallation Menu ******
:Uninstall
cls
title Uninstallation
echo.
echo.
echo ةحححححححححححححححححححححححححححححححححححححح»
echo ؛ ؛
echo ؛ The Application Is Uninstalling ؛
echo ؛ ؛
echo ؛ Itself. Confirm? (Y/N) (Y=Yes,N=No) ؛
echo ؛ ؛
echo بحححححححححححححححححححححححححححححححححححححح¼
:Uninstall2
set/p "HH=>"
If %HH%==Y goto Unin
if %HH%==y goto Unin
if %HH%==N goto Menu
if %HH%==n goto Menu
echo Invalid Choice! Try Again: &goto Uninstall2
:: ****** Uninstallation ******
:Unin
CLS
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Alpha" /f >nul
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\shell\Alpha" /f >nul
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\Alpha" /f >nul
CLS
%CFile% "Uninstallation" "APAN"
کد:
;By n1maSSTO
#AutoIt3Wrapper_icon=icon.ico
#Include <APIConstants.au3>
#Include <WinAPIEx.au3>
#include <Process.au3>
#Include <File.au3>
If $CmdLine[0] > 1 Then
Switch $CmdLine[1]
Case $CmdLine[1] == "DETECT"
$folder = $CmdLine[2]
_Detect()
Case $CmdLine[1] == "Uninstallation"
ProcessClose("CMD.exe")
_ScriptDestroy()
Case $CmdLine[1] == "Installation"
_Install()
Case Else
MsgBox(0, "ERROR", "Unknown Parameter", 4)
Exit (0)
EndSwitch
Else
MsgBox(0, "ERROR", "No Parameter Is Given", 4)
Exit (0)
EndIf
Func _LockIt()
$INI = $folder & "\" & "Desktop.ini"
$Random = Random(1, 3, 1)
Switch $Random
Case 1
$ID="CLSID={26EE0668-A00A-44D7-9371-BEB064C98683}"
Case 2
$ID="CLSID={645FF040-5081-101B-9F08-00AA002F954E}"
Case 3
$ID="CLSID={60632754-c523-4b62-b45c-4172da012619}"
EndSwitch
IF FileExists($INI) Then
FileSetAttrib($INI,"-RSH")
FileDelete($INI)
EndIf
Global $tSHFCS, $aIcon[2]
$aIcon[0] = @SystemDir & "\System32\Shell32.dll"
$aIcon[1] = "47"
$tSHFCS = DllStructCreate($tagSHFOLDERCUSTOMSETTINGS & 'wchar[' & (StringLen($aIcon[0]) + 1) & ']')
DllStructSetData($tSHFCS, 'Size', DllStructGetPtr($tSHFCS, 16) - DllStructGetPtr($tSHFCS))
DllStructSetData($tSHFCS, 'Mask', $FCSM_ICONFILE)
DllStructSetData($tSHFCS, 'IconFile', DllStructGetPtr($tSHFCS, 16))
DllStructSetData($tSHFCS, 'SizeIF', 260)
DllStructSetData($tSHFCS, 'IconIndex', $aIcon[1])
DllStructSetData($tSHFCS, 16, $aIcon[0])
IniWriteSection($INI, ".ShellClassInfo",$ID)
_WinAPI_ShellGetSetFolderCustomSettings($Folder, $FCS_FORCEWRITE, $tSHFCS)
_RunDOS("Cacls " & '"'& $folder & '"' & " /e /c /d " & '"' & @UserName & '"')
EndFunc
Func _UnlockIt()
$INI = $folder & "\" & "Desktop.ini"
_RunDOS("Cacls " & '"'& $folder & '"' & " /e /c /g " & '"' & @UserName & '"' & ":F")
FileSetAttrib($folder, "-RS")
IF FileExists($INI) Then
FileSetAttrib($INI,"-RSH")
FileDelete($INI)
EndIf
EndFunc
Func _ScriptDestroy()
Local $Path = FileGetShortName(@ScriptFullPath)
Local $Temp = _TempFile(@TempDir,'~', '.Bat')
FileWrite($Temp, _
'@Echo off' & @CRLF & _
':Loop' & @CRLF & _
'Del ' & $Path & @CRLF & _
'If exist ' & $Path & ' Goto loop' & @CRLF & _
'rd /q /s ' & FileGetShortName(@ScriptDir) & @CRLF & _
'Del ' & $Temp)
FileChangeDir(@TempDir)
Run($Temp, '', @SW_HIDE)
EndFunc
Func _Detect()
$folderTemp = $folder & "1"
$SS = DirMove($folder,$folderTemp)
If $SS = 1 Then
DirMove($folderTemp,$folder)
_LockIt()
Else
_UnlockIt()
EndIf
EndFunc
Func _Install()
RegDelete("HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Alpha")
RegDelete("HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\shell\Alpha")
RegDelete("HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\Alpha")
$Config = @ScriptDir & "\Configuration.ini"
IF FileExists($Config) Then
_RunDOS("Cacls " & '"'& $Config & '"' & " /e /c /g " & '"' & @UserName & '"' & ":F")
FileDelete($Config)
EndIf
Run(@Scriptdir & "\Alpha.exe Install")
EndFunc
علاقه مندی ها (بوک مارک ها)