Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Помогите с архивацией Добавлено: 10.10.08 20:19  

Автор вопроса:  Jaychibek | ICQ: презираю 
Здравстуйте!!! Помогите пожалуйста
Задача состоит в том чтобы зархивировать папку
архивация через командную строку примерно выглядит следующим образом
Н:d:\>rar a -df Lograr "d:\Lograr"


пробую через Shell
FileSource = "D:\rar a -df Archive" & " " & Chr(34) & txtOutputFolder.Text & Chr(34)
Shell(FileSource)

программа высвечивает ошибку "Файл не найден"
можно ли как нибудь разобраться

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 Фенягz



ICQ: 387437448 

Вопросов: 7
Ответов: 202
 Web-сайт: atauenis.narod.ru/
 Профиль | | #1
Добавлено: 11.10.08 00:31
Проверьте код на опечатки. Также может быть что проблема в
FileSource = ";D:\rar a -df Archive" & " " & Chr(34) & txtOutputFolder.Text & Chr(34)

Ответить

Номер ответа: 2
Автор ответа:
 Шпион



ICQ: 250543104 

Вопросов: 13
Ответов: 118
 Профиль | | #2 Добавлено: 11.10.08 10:43
rar не найден? полный путь до него указывай

Ответить

Номер ответа: 3
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #3
Добавлено: 11.10.08 16:41
Когда в Shell указываешь помимо имени еще и параметры, эта функция не работает.
  1. Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
  2. Const SW_SHOWNORMAL = 1
  3. Private Sub Form_Load()
  4.     ShellExecute Me.hwnd, vbNullString, "D:\rar.exe", " a -df Archive """ & txtOutputFolder.Text & """", vbNullString, SW_SHOWNORMAL
  5. End Sub

Ответить

Номер ответа: 4
Автор ответа:
 Jaychibek



ICQ: презираю 

Вопросов: 10
Ответов: 20
 Профиль | | #4 Добавлено: 11.10.08 22:31
только нужно было указать полный путь в папку rar

FileSource = "C:\PROGRA~1\WinRAR\rar.exe a  Lograr " &   txtOutputFolder.Text    
 Shell(FileSource)

Но такой метод не прошел бы в случае если бы rar был установлен в другую папку
можно воспользоваться функцией api
прописываем в класс API функцию

Public Class WinAp
        Public Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
    End Class

sub RAR()
 Dim WinRar As New WinAp
 WinRar.WinExec("rar a d:\1 d:\1.txt", 1)
end sub

Ответить

Номер ответа: 5
Автор ответа:
 Шпион



ICQ: 250543104 

Вопросов: 13
Ответов: 118
 Профиль | | #5 Добавлено: 13.10.08 10:43
по-хорошему, надо либо полный путь указывать, либо rar за собой таскать, либо путь до rar в %PATH% хранить

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам