Jump to content

Kilitli Arşiv Yapma


tipitip1i

Recommended Posts

@mustafakara

Winrarın kurulu olmasına gerek yok. Bunun için ufak bir dosya kullanacağız sadece!

Tabi extra program kullanmadan da yapılır lakin işin kolayına kaçıyoruz işte.

Hemde boyut küçülüp,şifreleniyor...

Link to comment
Share on other sites

@mustafakara

Rar.exe ile ilgili örneği hazırladım. Diğer örnek uzun olacağı için beni mazur gör :(

Bu örnekte tek ihtiycasın olan dosaya rar.exe. Winrar klasöründen script dosyanın yanına kopyala.

Kolay gelsin...

Global $MUSTI_LST = @ScriptDir & "\Musti.lst"
_RAR_UNRAR($MUSTI_LST,"C:\Musti","",True) ;Arşivle
MsgBox(64,"","Dosyalar arşivelendi!")

_RAR_UNRAR($MUSTI_LST,"C:\","",False) ;Arşivden çıkart
MsgBox(64,"","Dosyalar arşivden çıkarıldı!")

; Hedef dosya, Hedef klasör,şifre,sıkıştır - sıkıştırmayı aç [Ture = Sıkıştırır,False sıkıştırmayı açar]
Func _RAR_UNRAR($TARGET_FILE,$TARGET_LOCATION,$PASSWORD = "",$Compress = True)
	Local $RAR_EXE = @ScriptDir & "\rar.exe"
	If not FileExists($RAR_EXE) Then $RAR_EXE = @ProgramFilesDir & "\Winrar\Rar.exe"
	If not FileExists($RAR_EXE) Then
		MsgBox(16,"Hata","Rar.exe bulunamadı!")
		Return SetError(1)
	EndIf
	If $PASSWORD <> "" Then $PASSWORD = "-hp" & $PASSWORD

	If $Compress Then
		If not FileExists($TARGET_LOCATION) Then
			MsgBox(16,"Hata",$TARGET_LOCATION & " bulunamadı!")
			Return SetError(2)
		EndIf
		RunWait($RAR_EXE & ' a' & $PASSWORD & ' "' & $TARGET_FILE & '" "' & $TARGET_LOCATION & '"',$TARGET_LOCATION,@SW_HIDE)
	Else
		If not FileExists($TARGET_FILE) Then
			MsgBox(16,"Hata",$TARGET_FILE & " bulunamadı!")
			Return SetError(2)
		EndIf
		RunWait($RAR_EXE & ' x -o+' & $PASSWORD & ' "' & $TARGET_FILE & '" "' & $TARGET_LOCATION & '"',$TARGET_LOCATION,@SW_HIDE)
	EndIf
EndFunc

Edit:Kodda ufak bir hata varmış...

Link to comment
Share on other sites

@mustafakara

Evet benim hatam :( Bu arada test amaçlı dos ekranını gösteriyor. Daha sonra @SW_SHOW yazan kısımları @SW_HIDE ile değiştirsin...

Kolay gelsin...

Global $MUSTI_LST = @ScriptDir & "\Musti.rar"
_RAR_UNRAR($MUSTI_LST,"C:\Musti","Deneme",True) ;Arşivle
MsgBox(64,"","Dosyalar arşivelendi!")

_RAR_UNRAR($MUSTI_LST,"C:\","Deneme",False) ;Arşivden çıkart
MsgBox(64,"","Dosyalar arşivden çıkarıldı!")

; Hedef dosya, Hedef klasör,şifre,sıkıştır - sıkıştırmayı aç [Ture = Sıkıştırır,False sıkıştırmayı açar]
Func _RAR_UNRAR($TARGET_FILE,$TARGET_LOCATION,$PASSWORD = "",$Compress = True)
	Local $RAR_EXE = @ScriptDir & "\rar.exe"
	If not FileExists($RAR_EXE) Then $RAR_EXE = @ProgramFilesDir & "\Winrar\Rar.exe"
	If not FileExists($RAR_EXE) Then
		MsgBox(16,"Hata","Rar.exe bulunamadı!")
		Return SetError(1)
	EndIf
	If $PASSWORD <> "" Then $PASSWORD = "-hp" & $PASSWORD

	If $Compress Then
		If not FileExists($TARGET_LOCATION) Then
			MsgBox(16,"Hata",$TARGET_LOCATION & " bulunamadı!")
			Return SetError(2)
		EndIf
		RunWait($RAR_EXE & ' a ' & $PASSWORD & ' "' & $TARGET_FILE & '" "' & $TARGET_LOCATION & '"',$TARGET_LOCATION,@SW_SHOW) ;@SW_HIDE
	Else
		If not FileExists($TARGET_FILE) Then
			MsgBox(16,"Hata",$TARGET_FILE & " bulunamadı!")
			Return SetError(2)
		EndIf
		RunWait($RAR_EXE & ' x -o+ ' & $PASSWORD & ' "' & $TARGET_FILE & '" "' & $TARGET_LOCATION & '"',$TARGET_LOCATION,@SW_SHOW) ;@SW_HIDE
	EndIf
EndFunc

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...