powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / удаление файла через Shell
25 сообщений из 34, страница 1 из 2
удаление файла через Shell
    #36338934
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет. Не могу удалить файл через Shell, поскольку файла del.exe в папке C:\WINDOWS\system32\ просто нет.
Причём через cmd команда del работает...
Вот что я пишу:
Код: plaintext
1.
2.
3.
4.
5.
If comm_txt = "copy" Then
rc = Shell("c:\Windows\System32\xcopy.exe " & from_file & " " & target_fld & " /d",  1 )
Else
rc = Shell("c:\Windows\System32\del.exe " & target_fld & " " & del_file,  1 )
End If
xcopy работает нормально (он есть в папке system32)
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36338957
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а зачем?

Код: plaintext
Kill del_file
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36338963
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cmd /c "del c:\1.txt"
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339132
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_Oneа зачем?

Код: plaintext
Kill del_file


ок.
Но тогда, насколько я понимаю, мне надо проверить на существование файла del_file, если я пишу
Код: plaintext
Kill target_fld & " " & del_file

Как это сделать?
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339141
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
if Dir(del_file)<>"" then Kill del_file
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339174
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One
Код: plaintext
if Dir(del_file)<>"" then Kill del_file

Не прокатило.

Желателен всё равно файлик del.exe Просто целевой (для удаления) файл находится на сетевых ресурсах.
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339184
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и что? вы права выдайте сначала нужные
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339195
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_MaverickKonst_One
Код: plaintext
if Dir(del_file)<>"" then Kill del_file

Не прокатило.

Что именно не прокатило-то? Ошибка в чем?

_Maverick
Желателен всё равно файлик del.exe Просто целевой (для удаления) файл находится на сетевых ресурсах.

И что из этого?
И нафига вообще проверять существование файла если можно просто обработать ошибку удаления.
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339320
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребят, вопрос весь в правах..
Я тут новичок, и не в курсе, как удалить файл под паролем....
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339329
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
под каким паролём? вы можете объяснить конкретно что и где вы пытаетесь удалять?
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339363
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Стоит сервер.
Чтобы зайти в его корневой каталог, нужно ввести логин и пароль пользователя.
Соответственно если я пишу dir("\\192.188.132.56\ora-xx\123.txt")
мне выдаётся ошибка bad filename....
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339367
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сначала подключите этот сетевой ресурс локально, а уже потом с ним работайте.
смотрте справку по: net use
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339373
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это уже сделано:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
'Подцепляем сетевой ресурс и входим с логином
rn_start = Shell("c:\Windows\System32\net use.exe " & str_folder & "/User:ora-" & code _
& "\[login] [pass]",  1 )

'Проверяем, удаляем файл или копируем???
comm_txt = Names("command").RefersToRange

'Выполняем процедуру копирования/удаления
    If comm_txt = "copy" Then
        'копируем
        rc = Shell("c:\Windows\System32\xcopy.exe " & from_file & " " & target_fld & " /d",  1 )
    Else
        'удаляем
        rc = Shell("c:\Windows\System32\del.exe " & target_fld & del_file,  1 )
    End If

'Отрубаем сетевой ресурс
rn_end = Shell("c:\Windows\System32\net use.exe " & str_folder & " /delete",  1 )
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339376
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
процесс удаления не работает...
Kill тоже не прокатывает...
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339388
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и под каким именем диска вы подрубаете сетевую директорию?

Код: plaintext
1.
2.
3.
4.
rn_start = Shell("c:\Windows\System32\net use.exe " & str_folder & "/User:ora-" & code _
& "\[login] [pass]",  1 )


MsgBox VBA.FileSystem.CurDir$
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339394
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Без буквы, просто подрубаюсь, чтобы была возможность удалить или записать...
Обязательно с буквой разве?
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339395
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The syntax of this command is:

NET USE
[ devicename | *] [\\computername\sharename[\volume] [ password | *]]
[/USER:[domainname\]username]
[/USER:[dotted domain name\]username]
[/USER:[username@dotted domain name]
[/SMARTCARD]
[/SAVECRED]
[[/DELETE] | [/PERSISTENT:{YES | NO}]]
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339399
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"c:\Windows\System32\net use.exe " & str_folder & "/User:ora-" & code & "\[login] [pass]"

у вас вообще нечто непонятное
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339402
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да. Согласен с Вами.
Но если ошибка из-за того, что нет буквы, почему файл записывается на диск, а при удалении выдаёт ошибку?
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339408
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
разберитесь с правами на эту сетевую директорию.
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339409
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
str_folder = \\[server]\[Shared_folder]
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339411
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_Oneразберитесь с правами на эту сетевую директорию.
Дело не в правах....
так как при команде из cmd
del .... и т.д.
всё отрабатывает чётко.
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339418
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
напишите сначала bat-файл , который бы выполнял нужные вам действия без всяких переменных. проверьте , чтобы он работал. а уже потом переносите отлаженный вариант в код программы уже с нужной вам логикой.
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339428
_Maverick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_Oneнапишите сначала bat-файл , который бы выполнял нужные вам действия без всяких переменных. проверьте , чтобы он работал. а уже потом переносите отлаженный вариант в код программы уже с нужной вам логикой.

Так в том-то и дело, что это всё уже сделано....
Батник написан и работает.
Проблема в том, что команда DEL работает из батника, а из VBA через Shell - нет...
Вот пытаюсь разобраться в чём дело!
...
Рейтинг: 0 / 0
удаление файла через Shell
    #36339433
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может вы ,наконец, приведёте содержимое вашего батника и полный исходник вашего кода со всеми предопределёнными переменными? а то в коде у вас сплошные ошибки, которые вы отказываетесь исправлять а только твердите, что у вас в батнике всё работает
...
Рейтинг: 0 / 0
25 сообщений из 34, страница 1 из 2
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / удаление файла через Shell
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]