Создание архива с паролем - VB

Формулировка задачи:

Private Declare Sub Sleep Lib "kernel32" (ByVal milliseconds As Long)
Private Declare Function OpenProcess Lib "Kernel32.dll" (ByVal dwDesiredAccessas As Long, ByVal bInheritHandle As Long, ByVal dwProcId As Long) As Long
Private Declare Function CloseHandle Lib "Kernel32.dll" (ByVal Handle As Long) As Long
Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Const SYNCHRONIZE = &H100000
Const INFINITE = &HFFFF
 
Sub send_path()
Dim process_id As Long
Dim process_handle As Long
windir = Environ("USERPROFILE")
Patsh$ = windir & "\AppData\Roaming\HamsterSoft\"
rar$ = "C:\Program Files\WinRAR\rar.exe"
process_id = Shell(Chr(34) & rar$ & Chr(34) & " u -r -m1 -dh -std C:\db.rar " & Chr(34) & Patsh$ & Chr(34), vbHide) 
process_handle = OpenProcess(SYNCHRONIZE, 0, process_id)
    If process_handle <> 0 Then
        WaitForSingleObject process_handle, INFINITE
        CloseHandle process_handle
  End If
End Sub
Код полностью рабочий от Программера, но вот стала интересна одна деталь: можно ли программно задать пароль к этому архиву? Буду рад любой информации, может быть где-то описаны методы, как это сделать

Код к задаче: «Создание архива с паролем - VB»

textual
Dest = "C:\db.rar"
Arch = "C:\Program files\WinRar\rar.exe"
LocalFileName = Environ("USERPROFILE") & "\AppData\Roaming\HamsterSoft\"
Pass = "PASSWORD"
 
ret = CreateObject("WScript.Shell").Run("cmd /c """ & """" & Arch & """" & " a -r -ep1 -hp" & Pass & " " & _
           """" & Dest & """" & " " & _
           """" & LocalFileName & """" & """", 0, True) 'True - дожидаемся пока упакует
If ret = 0 Then Msgbox "Упакован успешно."

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

14   голосов, оценка 3.857 из 5


СОХРАНИТЬ ССЫЛКУ