Автор Тема: Удаление данных под user с правами Администратора  (Прочитано 7138 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Mark 1 [?]

  • Новичок
  • *
  • Сообщений: 6
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Версия AutoIt:
v3.3.12.0
Описание:
Добрый день всем, прошу помочь, цель такая - запустить bat под учетной записью user c правами админа, без запроса пароля а по окончанию удалял сам себя. Это необходимо для запуска на рабочих станциях что бы очищать данные
Сам bat содержит в себе:
(нажмите для показа/скрытия)
Цель его что бы удалял из определенной директории типы всех файлов.

Примечания:
вот что попробовал...использовал другой bat что бы не удалил мои доки, но что то у меня не получилось
Код: AutoIt [Выделить]
$sUserName = "Администратор"
$sPassword = "12345"
$siDir='"C:\Users\gipokrat\Desktop\hello.bat"'
RunAs($sUserName,@ComputerName,$sPassword, 0, $cmdFile, $siDir)

Hello.bat содержит
echo "Hello World!"
pause

Если можно это реализовать через bat то как.
Пожалуйста если можно поподробнее я еще молод и только учусь быть матерым

« Последнее редактирование: Апрель 20, 2015, 14:54:38 от Mark 1 »

Русское сообщество AutoIt

Удаление данных под user с правами Администратора
« Отправлен: Апрель 20, 2015, 14:12:46 »

Оффлайн madmasles [?]

  • Глобальный модератор
  • *
  • Сообщений: 7790
  • Репутация: 2317
  • Пол: Мужской
  • Награды За модерирование форума
    • Награды
  • Версия AutoIt: 3.3.x.x
ПредупреждениеЗа нарушение правил форума (пункт В.11):
Цитировать
Любые отрывки AutoIt кода необходимо заключать в тег [autoit] (подробнее), а обычный код соответственно в тег [code] (подробнее). Также большие выдержки текста помещайте под тег [spoiler] (подробнее), там где это поддерживается естественно. Как в случае с названием темы, также короткое и эргономичное сообщение привлекает больше внимания, и шансы на получение конкретного ответа увеличиваются.


С уважением, ваш Глобальный модератор.

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2949
  • Репутация: 494
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
а зачем командная строка?
Код: AutoIt [Выделить]
чем не устраивает?
найти все файлы по маске в нужной папке и удалить. и все
Были времена, когда солнце было ярче, трава зеленее, а водка сорокоградуснее

Русское сообщество AutoIt

Re: Удаление данных под user с правами Администратора
« Ответ #2 Отправлен: Апрель 20, 2015, 14:56:40 »

Оффлайн Mark 1 [?]

  • Новичок
  • *
  • Сообщений: 6

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
если удалить файлы можно здесь, то и наверное батник смысла запускать нет ?

Возможно ли что бы данная программа запускалась с прописанными правами админа и уже шло удаление и выводило только сообщение о статусе - выполнено или не выполнено.

Сказать честно у меня мини прога даже не сработала
Код: AutoIt [Выделить]
FileDelete ("C:\123\*.doc")
if FileDelete=1 Then
   MsgBox (64, "Очистка", "Выполнена успешно" [,timeout = 10])
FileDelete=0 Then
   MsgBox (64, "Очистка", "Пошло что то не так..." [,timeout = 10])
 EndIf
 


Оффлайн ildar [?]

  • Осваивающий
  • **
  • Сообщений: 244
  • Репутация: 28
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.8.1
А с этим
Код: AutoIt [Выделить]

Русское сообщество AutoIt

Re: Удаление данных под user с правами Администратора
« Ответ #4 Отправлен: Апрель 20, 2015, 16:59:59 »

Оффлайн CrazyDoc [?]

  • Новичок
  • *
  • Сообщений: 75
  • Репутация: 2
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
А с этим
Код: AutoIt [Выделить]
Это запрос на права администратора. Наверное так:
Код: AutoIt [Выделить]
+
(нажмите для показа/скрытия)

Оффлайн Mark 1 [?]

  • Новичок
  • *
  • Сообщений: 6

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
А с этим
Код: AutoIt [Выделить]
Мне же нужно из под любого пользователя запускать программу а Админскими правами (а у администратора пароль)

а возможно например удаление всех .doc .gif и jpg и тп удаление файлов  из каталога и c:\user и последующих папок включая скрытые.
И еще вопрос можно ли освободить папку от всего. Например мне нужно очистить кэш у программы по адресу C:\Users\user\AppData\LocalLow\Sun\Java\Deployment\cache ... желательно не удаляя саму папку

при данном коде срабатывает второе окно всегда. даже если удаляет
Код: AutoIt [Выделить]
FileDelete ("C:\123\*.doc")
if FileDelete=1 Then
   MsgBox (64, "Очистка", "Выполнена успешно",10)
Else
   MsgBox (64, "Очистка", "Пошло что то не так...",10)
 EndIf

« Последнее редактирование: Апрель 20, 2015, 17:38:09 от Mark 1 »

Оффлайн inververs [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 2135
  • Репутация: 462
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Код: AutoIt [Выделить]

if FileDelete("C:\123\*.doc")=1 Then
   MsgBox (64, "Очистка", "Выполнена успешно",10)
Else
   MsgBox (64, "Очистка", "Пошло что то не так...",10)
 EndIf
 


Русское сообщество AutoIt

Re: Удаление данных под user с правами Администратора
« Ответ #7 Отправлен: Апрель 20, 2015, 17:53:51 »

Оффлайн Mark 1 [?]

  • Новичок
  • *
  • Сообщений: 6

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Код: AutoIt [Выделить]

if FileDelete("C:\123\*.doc")=1 Then
   MsgBox (64, "Очистка", "Выполнена успешно",10)
Else
   MsgBox (64, "Очистка", "Пошло что то не так...",10)
 EndIf
 

Спасибо большое
как сделать что бы чистил под папки ?
можно ли перечислить все типы файлов через запятую ?
как верно запустить с админскими правами ?
Всем большое спасибо :-[

Оффлайн Mark 1 [?]

  • Новичок
  • *
  • Сообщений: 6

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Вот что получилось за 3 дня
Результат: Скрипт создает файл *.bat записывает туда информацию и после запускает его под админом (на предприятии пароль для лок. админа один везде), созданный файл удаляет все файлы по расширению в заданной папке и записывает результат в файл в корне диска С
Далее сам себя удаляет... Сделаны сообщения для пользователя и блокировка (в ранних версиях это было актуально теперь же очень сомнительно )...делал впервые прошу сильно не пинать, если кто может что то дополнить буду благодарен. Спасибо

(нажмите для показа/скрытия)


Добавлено: Апрель 22, 2015, 11:11:08
В идеале было бы сделать что бы Добавлялся локальный пользователь с именем "Администратор" и сделать его администратором и присвоить пароль и уже потом выполнять всю программу. Мб кто подскажет как верно это реализовать а то на большей части машин есть данный пользователь а на малой части он отсутствует
« Последнее редактирование: Апрель 22, 2015, 11:11:08 от Mark 1, Причина: Объединение сообщений »

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2949
  • Репутация: 494
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
тут бат не нужен. есть функции поиска файлов по маске и потом удаление. это будет логичнее, если использовать Autoit. а так это как костыль. зачем пароль админа? разве при удалении вручную нужно каждый раз вводить логин и пароль?
Mark 1  [?]
Цитировать
Цель его что бы удалял из определенной директории типы всех файлов.
не все файлы указаны. есть еще .exe .msi и так далее.
для поиска всех файлов (и в подпапках) функция
Код: AutoIt [Выделить]
либо другая любая пользовательская функция, примеров на форуме масса

Оффлайн inververs [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 2135
  • Репутация: 462
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
joiner
 посмотри на раздел, это стол заказов.

Оффлайн Mark 1 [?]

  • Новичок
  • *
  • Сообщений: 6

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
так было сделано для того что бы запуск проходил под любым пользователем а на одной рабочей станции их может быть 10 (и у них нет прав админа) а если запускать exe из под пользователя он не даст доступ к папкам других пользователей, а к ним доступ необходим.

А если по теме как-то можно создавать\добавлять пользователей и наделять их админскими правами в win7 через bat или autoit ?
 
И еще 1 вопросик ... есть 10 user и у них есть папка которую мне нужно очистить а пути все разные но есть общая структура
C:\Users\mtrifanov\AppData\LocalLow\Sun\Java\Deployment\cache
C:\Users\ntoporov\AppData\LocalLow\Sun\Java\Deployment\cache
C:\Users\ebercov\AppData\LocalLow\Sun\Java\Deployment\cache
C:\Users\......\AppData\LocalLow\Sun\Java\Deployment\cache

как можно описать конечную папку

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2949
  • Репутация: 494
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
inververs  [?]
Цитировать
посмотри на раздел, это стол заказов.
OffTopicнеужели?

Код: AutoIt [Выделить]
#include <File.au3>
;получаем список пользователей
$strComputer = "."
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\cimv2")
$colItems = $objWMIService.ExecQuery("Select Name,SID From Win32_UserAccount")
;очищаем у каждого пользователя нужную папку
For $objItem In $colItems
    $aFile = _FileListToArrayRec('C:\Users\' & $objItem.Name & '\AppData\LocalLow\Sun\Java\Deployment\cache', '*', 1, 1, 0, 2);ищем файлы во всех подпапках если они есть
    $GetCount = UBound($aFile)
    If $GetCount Then
        For $i = 0 To $GetCount - 1
            FileDelete($aFile[$i])
        Next
    EndIf
Next

идея такова. компилируешь этот код,
 потом пишешь отдельный скрипт
Код: AutoIt [Выделить]
FileInstall('del.exe',@TempDir & '\del.exe',1)
RunAs(' параметры запуска: логин пароль и тд')

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

 для общего удаления
Код: AutoIt [Выделить]
$aFile = _FileListToArrayRec('C:\Users', '*.bmp;*.exe', 1, 1, 0, 2)
For $i = 0 To UBound($aFile) - 1
    FileDelete($aFile[$i])
Next

удалит все файлы с указанным расширением в папках пользователей
« Последнее редактирование: Апрель 22, 2015, 14:38:02 от joiner »

Русское сообщество AutoIt

Re: Удаление данных под user с правами Администратора
« Ответ #13 Отправлен: Апрель 22, 2015, 14:19:10 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
25 Ответов
26564 Просмотров
Последний ответ Декабрь 10, 2013, 00:22:48
от glax24
1 Ответов
3209 Просмотров
Последний ответ Октябрь 01, 2012, 23:54:44
от beliy
7 Ответов
5200 Просмотров
Последний ответ Март 14, 2013, 15:28:39
от loner
2 Ответов
2119 Просмотров
Последний ответ Апрель 14, 2014, 17:03:31
от madmasles
4 Ответов
1574 Просмотров
Последний ответ Октябрь 29, 2014, 10:01:03
от GUIMish
0 Ответов
870 Просмотров
Последний ответ Октябрь 31, 2014, 03:05:43
от Yashied
10 Ответов
6936 Просмотров
Последний ответ Июль 27, 2015, 06:30:25
от op_joke
8 Ответов
3890 Просмотров
Последний ответ Март 14, 2016, 12:52:07
от mef-t
1 Ответов
1737 Просмотров
Последний ответ Апрель 18, 2016, 20:52:19
от WR-e-D
3 Ответов
2066 Просмотров
Последний ответ Апрель 28, 2017, 15:55:33
от sergioz