Форум программистов, компьютерный форум, киберфорум
VBScript/JScript/WSH/WMI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/56: Рейтинг темы: голосов - 56, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 01.08.2011
Сообщений: 35

Скопировать,разархивировать и удалить архив

01.06.2012, 18:58. Показов 10939. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите пожалуйста написать в VBSпрограмму, задание:
1)В локальном диске с:\Temp сохранен архив с расширением rar с файлами(1.exe, 1.dat, 1.lnk) .Нужно скопировать,разархивировать на рабочий стол,и удалить этот архив.Все действия записать в блок-файл.vbs.
2)Написать блок-файл.vbs,который анализирует сколько раз выполнялись действия из 1 задания, если были ошибки,то сколько раз.

Добавлено через 5 часов 38 минут
как разархивировать архив в vbs?
архив называется arhiv.rar находится в диске C:\Temp\arhiv.rar, нужно разархивировать его на рабочий стол,вот путь рабочего стола- C:\Documents and Settings\User\rabochii stol
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.06.2012, 18:58
Ответы с готовыми решениями:

Как разархивировать rar, zip, cab?
как разархивировать rar zip cab средствами винды? vbs или bat Спасибо за внимание.

Разархивировать архив с паролем
Помогите. Задача стоит так: есть папка с архивами (.arj), которые закрыты паролями, пароли в текстовых файлах (строка 1) в той же папке,...

Разархивировать архив с заменой
Ребят, что лучше использовать для распаковки файла с возможной заменой? Встроенную ф-ию в PHP или пользоваться архиваторами?

9
0 / 0 / 0
Регистрация: 01.08.2011
Сообщений: 35
05.06.2012, 18:57  [ТС]
Скажите пожауйста что значит ошибка: разрешение отклонено код 800А0046 ?
Bash
1
2
3
4
5
6
Dim FSO
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
If FSO.FileExists("C:Temp\arhiv.rar") Then
FSO.CopyFile "C:Temp\arhiv.rar" , "C:\Documents and Settings\User\rabochii stol" , True
WSCRIPT.echo "arhiv skopirovan na rabochii stol"
End If
вот код, пытаюсь скопировать архив на рабочий стол, пишут ошибка: разрешение отклонено, строка 4, символ 1. Что за ошибка эта?
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18030 / 7733 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
07.06.2012, 13:43
Цитата Сообщение от Триша Посмотреть сообщение
C:Temp\arhiv.rar
возможно, слеш пропустили
Bash
1
C:\Temp\arhiv.rar
0
0 / 0 / 0
Регистрация: 01.08.2011
Сообщений: 35
09.06.2012, 16:15  [ТС]
исправила, всё равно эта же ошибка выходит
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18030 / 7733 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
10.06.2012, 00:13
Смотрим справку по работе с FSO. http://www.script-coding.com/W... bject.html
Это означает, что такой файл уже есть на получателе, при чем он имеет атрибут "Только для чтения", или другие параметры, для которых исполняемый VBS-скрипт не имеет достаточных прав (например запись в корень диска С или в системные папки при работе с уч. записи обычного пользователя или "органиченного администратора").

1.Выход проверять существует ли файл в папке-получателе.
Если нужно перезаписывать:
2. Предварительно удалять файл.

Добавлено через 1 час 15 минут
Вот сделал таким алгоритмом:
Если целевой файл существует, снимаем с него все атрибуты.
Если исходный файл существует, копируем его в целевой с заменой (теперь она будет работать корректно).

Bash
1
2
3
4
5
6
7
8
9
10
11
dim Source, Dest, oFSO
Source = "e:\file.log"
Dest = "e:\file2.log"
Set oFSO = CreateObject("Scripting.FileSystemObject")
If oFSO.FileExists(Dest) then
  Set oFile = oFSO.GetFile(Dest)
  oFile.Attributes = 0
end if
If oFSO.FileExists(Source) then
  oFSO.CopyFile Source, Dest , True
end if
1
0 / 0 / 0
Регистрация: 01.08.2011
Сообщений: 35
20.06.2012, 15:35  [ТС]
Спасибо большое))))))) Всё хорошо работает. Чтоб разархивировать архив, какой метод лучше использовать?

Добавлено через 3 часа 19 минут
Что значит ошибка: "C:Temp\arhiv.rar" не является приложением Win32? Код:800700С1 Источник:WshShell.Exec
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18030 / 7733 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
21.06.2012, 16:09
попробуйте в начале аргумента командной строки для Exec подставить cmd /c
например так:
Bash
1
2
Set WshShell = CreateObject("WScript.Shell")
Set WshExec = WshShell.Exec("cmd.exe /c rar.exe x dev.rar")
Это в случае, если архиватор и архив будут находится рядом со скриптом в одной папке,
в противном случае придется мучать кавычки, но команда CMD понимает только одну пару.
0
0 / 0 / 0
Регистрация: 01.08.2011
Сообщений: 35
21.06.2012, 20:03  [ТС]
Bash
1
2
3
4
Set WshShell = CreateObject("WScript.Shell")
Set WshExec = WshShell.Exec("cmd.exe /c rar.exe x C:\Temp\arhiv.rar")
SEt lf1 = WshShell.CreateTextFile("C:\log.txt", True)
lf.WriteLine ("arhiv razarhivirovan na rabochii stol")
в этом коде хочу разархивировать архив на рабочий стол и ввести строку ("arhiv razarhivirovan na rabochii stol") в log.txt.
1) почему распаковка архива выполняется на диск с:\ а не на рабочий стол?
2) сообщение в текстовый файл не выполняется, почему?

Добавлено через 1 минуту
рабочий стол находится по этому пути: C:\Documents and Settings\User\rabochii stol\*.*
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18030 / 7733 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
24.06.2012, 02:20
1) Дописать в конце команды директорию, куда распаковывать (в кавычках, потому как есть пробелы).

Обращайте внимание на объекты. Вот в посте №2 Вы правильно работали с объектами.
2) Не работает, потому что нет такого метода CreateTextFile у объекта WScript.Shell (справку давал в посте № 5).

Visual Basic
1
2
3
4
5
6
Set WshShell = CreateObject("WScript.Shell")
Set WshExec = WshShell.Exec("cmd /c rar x C:\Temp\arhiv.rar ""C:\Documents and Settings\User\rabochii stol\""")
Set oFS = CreateObject("Scripting.FileSystemObject")
Set lf1 = oFS.CreateTextFile("c:\log.txt",true)
lf1.Writeline "arhiv razarhivirovan na rabochii stol"
lf1.close
Если не будет создавать тхт.файл, возможно недостаточно прав для создание в корне С:
Попробуйте на другой диск/или каталог.

P.S. А это список свойств по объекту WshShell
1
0 / 0 / 0
Регистрация: 01.08.2011
Сообщений: 35
24.06.2012, 12:59  [ТС]
Всё хорошо работает))))) Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.06.2012, 12:59
Помогаю со студенческими работами здесь

Разархивировать архив с известным паролем
В интернете все примеры которые я находил были с архивами без паролей. Мне нужно работать с архивами (zip или rar) на которые установлены...

Как разархивировать запароленный 7z архив
Доброе утро! нужно разархивировать запароленный архив echo setlocal set "path=%path%;%programfiles%\7-zip" :: разархивируем...

Из VB разархивировать rar-архив с паролем (известен)
Как разархивировать просто rar-архив я понял: WinRarApp = "C:\Program Files\WinRAR\WinRAR.exe e " iPath...

Разархивировать архив в папке и поместить в нужное место
Добрый вечер, единомышленники. Просьба помочь в вопросе. Нужно: 1) Зайти в папке; 2) Разархивировать все архивы; 3) Переместить все...

Нужно скачать архив с сайта и разархивировать его
Помогите :help: Всё перепробовал ! Нужно скачать архив с сайта и разархивировать его.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 23.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru