none
Запуск пакетного файла от имени администратора RRS feed

  • Общие обсуждения

  • Доброго времени суток!

    Ситуация такова:

    Сеанс загружен под учёткой с правами пользователя "User".

    Запускаю пакетный файл от имени учётки "Admin", обладающей правами администратора, но в процессе выполнения этого пакетного фала он нормально не отрабатывает.

    Если я Зайду под учёткой "Admin" и запущу пакетный файл, выбрав в контекстном меню "Запуск от имени администратора", то пакетный файл отработает нормально.

    Настройки UAC изменять не могу.

    Подскажите пожалуйста как быть в данной ситуации?

    Заранее благодарен!

    P.S.:

    Если подойти с точки зрения написания самого пакетного файла, то если я добавлю в его начало строчку "set __COMPAT_LAYER=RunAsInvoker" то отрабатывает только часть этого пакетного файла:

    set __COMPAT_LAYER=RunAsInvoker

    reg add "HKLM\Software\1" /v 1 /t REG_SZ /d "1" /f

    reg add "HKLM\Software\2" /v 2 /t REG_SZ /d "2" /f

    for /f "usebackq tokens=3,3* delims== " %%i in (`reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /v ProfilesDirectory`) do set profiles=%%i

    for /f "usebackq delims==" %%i in (`echo %profiles%`) do set profiles=%%i

    For /F "usebackq tokens=* delims==" %%i in (`DIR /B /AD-S "%profiles%" ^| FINDSTR /V /B /I /C:"All Users"`) DO (

       reg load HKEY_USERS\Custom "%profiles%\%%i\NTUSER.DAT"

       REG ADD "HKU\Custom\Software\1" /v 1 /t REG_SZ /d "1" /f

       reg unload HKEY_USERS\Custom

    )

    Т.е. когда начинает пробовать поочереди подгружать кусты реестра всех профилей (reg load HKEY_USERS\Custom "%profiles%\%%i\NTUSER.DAT" и т.д.), то начинает ругаться:

    "Ошибка: Клиент не обладает требуемыми правами

    Ошибка: Параметр задан неверно

    Ошибка: Клиент не обладает требуемыми правами"


    15 января 2014 г. 9:37

Все ответы

  • CMD -> RunAs /profile /user:admin@domain paketniyfayl
    15 января 2014 г. 9:43
    Модератор
  • не работает((
    15 января 2014 г. 10:31
  • Правильно ли я вас понял

    1) вы в момент обработки от имени админа пытаетесь что то делать под залогиненым юзером и не выходит

    2) под админом всё работает но пользователь от которого вы в варианте 1 пытались скрипту запустить не залогинен

    Ответе пожалуйста на эти 2 вопроса есть одно предположение, но надо погуглить (сейчас этим занимаюсь)

    15 января 2014 г. 12:16
    Модератор
  • Правильно ли я вас понял

    1) вы в момент обработки от имени админа пытаетесь что то делать под залогиненым юзером и не выходит

    2) под админом всё работает но пользователь от которого вы в варианте 1 пытались скрипту запустить не залогинен

    Ответе пожалуйста на эти 2 вопроса есть одно предположение, но надо погуглить (сейчас этим занимаюсь)

    Не совсем...

    Попытаюсь обьяснить:

    Захожу в систему под User

    Запускаю пакетный файл от имени Admin

    Не работает, потому как для того что бы заработало нужно ещё с повышенными правами запустить...т.е если бы в сеансе User можно было бы запустить проводник от имени Admin и уже в проводнике при запуске пакетного файла выбрать в контекстном меню "Запуск от имени администратора", то всё бы заработало, но к сожалению проводник от имени другого пользователя у меня запустить не получалось)), только cmd или Far, а в них нет возможности вызвать контекстное меню...

     

    16 января 2014 г. 6:42
  • Добрый день!

    Почему не получалась?

    Пуск>Поиск>Windows Explorer>Правый клик>Запуск от администратора


    Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.



    17 января 2014 г. 6:44
    Модератор
  • Добрый день!

    Почему не получалась?

    Пуск>Поиск>Windows Explorer>Правый клик>Запуск от администратора


    Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.



    Добрый день попробовал Вашим способом запустить Проводник, вот как отругалось:

    Windows cannot access the specified device, path, or file.  You may not have the appropriate permissions to access the item.

    17 января 2014 г. 7:36
  • Возможно вопрос в том что пока вы находитесь под пользователем файл нтюзер.дат занят этим пользователем и не может быть прочитан другим пользователем пусть даже админом

    если вы заходите под другим пользователем а реальный владелец нтюзер дат и прочего находится в логофе всё выходит

    перепроверьте это предположение

    17 января 2014 г. 7:41
    Модератор
  • Нет нет...

    В описанном Вами случае ругается только на нтюзер.дат только того пользователя под которым выполнен вход в систему, ну и заодно ругается на нтюзер.дат админа под которым запускается пакетный файл.

    То есть если вход в систему выполнен под админом и мы просто (без контекстного меню) запусти пакетный файл, то в данном примере запись в реестр не происходит. Т.е. надо запускать батник через контекстное меню "Выполнить от имени администратора"

    17 января 2014 г. 7:49
  • для начала убери
    set __COMPAT_LAYER=RunAsInvoker
    если будут продолжаться проблемы вставь в скрипт команду whoami /all и вывод скрипта с ошибками выложи в топик

    MCTS: Windows iNTernals

    profile for sergmat at Stack Overflow, Q&A for professional and enthusiast programmers

    18 января 2014 г. 3:37
  • Выкладываю вывод скрипта:

    D:\>whoami /all

    Сведения о пользователе
    ----------------

    Пользователь            SID                                         
    ======================= =============================================
    comp1\admin             S-1-5-21-****-1000


    Сведения о группах
    -----------------

    Группа                                          Тип                     SID          Атрибуты                                                    
    =============================================== ======================= ============ =============================================================
    Все                                             Хорошо известная группа S-1-1-0      Обязательная группа, Включены по умолчанию, Включенная группа
    BUILTIN\Администраторы                          Псевдоним               S-1-5-32-544 Группа, используемая только для запрета                     
    BUILTIN\Пользователи                            Псевдоним               S-1-5-32-545 Обязательная группа, Включены по умолчанию, Включенная группа
    NT AUTHORITY\ИНТЕРАКТИВНЫЕ                      Хорошо известная группа S-1-5-4      Обязательная группа, Включены по умолчанию, Включенная группа
    КОНСОЛЬНЫЙ ВХОД                                 Хорошо известная группа S-1-2-1      Обязательная группа, Включены по умолчанию, Включенная группа
    NT AUTHORITY\Прошедшие проверку                 Хорошо известная группа S-1-5-11     Обязательная группа, Включены по умолчанию, Включенная группа
    NT AUTHORITY\Данная организация                 Хорошо известная группа S-1-5-15     Обязательная группа, Включены по умолчанию, Включенная группа
    ЛОКАЛЬНЫЕ                                       Хорошо известная группа S-1-2-0      Обязательная группа, Включены по умолчанию, Включенная группа
    NT AUTHORITY\Проверка подлинности NTLM          Хорошо известная группа S-1-5-64-10  Обязательная группа, Включены по умолчанию, Включенная группа
    Обязательная метка\Средний обязательный уровень Метка                   S-1-16-8192  Обязательная группа, Включены по умолчанию, Включенная группа


    Сведения о привилегиях
    ----------------------

    Имя привилегии                Описание                                   Область, край
    ============================= ========================================== =============
    SeShutdownPrivilege           Завершение работы системы                  Отключен    
    SeChangeNotifyPrivilege       Обход перекрестной проверки                включен     
    SeUndockPrivilege             Отключение компьютера от стыковочного узла Отключен    
    SeIncreaseWorkingSetPrivilege Увеличение рабочего набора процесса        Отключен    
    SeTimeZonePrivilege           Изменение часового пояса                   Отключен    

    D:\>reg add "HKLM\Software\1" /v 1 /t REG_SZ /d "1" /f
    Ошибка: Отказано в доступе.

    D:\>reg add "HKLM\Software\2" /v 2 /t REG_SZ /d "2" /f
    Ошибка: Отказано в доступе.

    D:\>for /F "usebackq tokens=3,3* delims== " %i in (`reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /v ProfilesDirectory`) do set profiles=%i

    D:\>set profiles=%SystemDrive%\Users

    D:\>for /F "usebackq delims==" %i in (`echo %SystemDrive%\Users`) do set profiles=%i

    D:\>set profiles=C:\Users

    D:\>For /F "usebackq tokens=* delims==" %i in (`DIR /B /AD-S "C:\Users" | FINDSTR /V /B /I /C:"All Users"`) DO (
    reg load HKEY_USERS\Custom "C:\Users\%i\NTUSER.DAT" 
     REG ADD "HKU\Custom\Software\1" /v 1 /t REG_SZ /d "1" /f  
     reg unload HKEY_USERS\Custom
    )

    D:\>(
    reg load HKEY_USERS\Custom "C:\Users\admin\NTUSER.DAT" 
     REG ADD "HKU\Custom\Software\1" /v 1 /t REG_SZ /d "1" /f  
     reg unload HKEY_USERS\Custom
    )
    Ошибка: Клиент не обладает требуемыми правами.
    Ошибка: Параметр задан неверно.
    Ошибка: Клиент не обладает требуемыми правами.

    D:\>(
    reg load HKEY_USERS\Custom "C:\Users\Default\NTUSER.DAT" 
     REG ADD "HKU\Custom\Software\1" /v 1 /t REG_SZ /d "1" /f  
     reg unload HKEY_USERS\Custom
    )
    Ошибка: Клиент не обладает требуемыми правами.
    Ошибка: Параметр задан неверно.
    Ошибка: Клиент не обладает требуемыми правами.

    D:\>(
    reg load HKEY_USERS\Custom "C:\Users\Public\NTUSER.DAT" 
     REG ADD "HKU\Custom\Software\1" /v 1 /t REG_SZ /d "1" /f  
     reg unload HKEY_USERS\Custom
    )
    Ошибка: Клиент не обладает требуемыми правами.
    Ошибка: Параметр задан неверно.
    Ошибка: Клиент не обладает требуемыми правами.

    D:\>(
    reg load HKEY_USERS\Custom "C:\Users\User\NTUSER.DAT" 
     REG ADD "HKU\Custom\Software\1" /v 1 /t REG_SZ /d "1" /f  
     reg unload HKEY_USERS\Custom
    )
    Ошибка: Клиент не обладает требуемыми правами.
    Ошибка: Параметр задан неверно.
    Ошибка: Клиент не обладает требуемыми правами.

    20 января 2014 г. 14:38
  • BUILTIN\Администраторы                          Псевдоним               S-1-5-32-544 Группа, используемая только для запрета

    Admin Approval Mode (по-русски режим одобрения администратором)причина отказа в доступе, пользователь входит в группу администраторы, но в данном случае применен отфильтрованный маркер вместо полного, почему не знаю, на своей машине воспроизвести проблему мне не удалось. Дефолтовые настройки для w7.


    MCTS: Windows iNTernals

    profile for sergmat at Stack Overflow, Q&A for professional and enthusiast programmers

    • Изменено sergmat 20 января 2014 г. 18:27
    20 января 2014 г. 16:22
  • Вы пробовали для решения задачи задействовать возможности Планировщика заданий?

    Да, я Жук, три пары лапок и фасеточные глаза :))


    22 января 2014 г. 14:20
    Модератор
  • Нет, не пробовал, а как?

    23 января 2014 г. 6:49
  • Например воспользоваться рекомендациями статей:

    http://www.sewell.by/articles/windows/22-winplaner

    http://www.oszone.net/10594/run_as_admin#400


    Да, я Жук, три пары лапок и фасеточные глаза :))

    23 января 2014 г. 9:31
    Модератор
  • Если я правильно понял, я должен буду из командной строки создать задание которая должна будет выполняться с наивысшим приоритетом (с ключиком /RL Highest), но для этого батник в котором это задание будет создаваться это задание мне тоже надо будет запускать выбрав в контекстном меню  "Выполнить от имени администратора", что в моём случае, как я описывал выше, сделать невозможно ((( 
    23 января 2014 г. 10:38
  • Взгляньте на команды:

    http://stackoverflow.com/questions/12456675/single-line-command-for-run-as-different-user-in-window-7-that-contain-password


    а что именно подойдёт для моего случая?
    23 января 2014 г. 11:12
  • 1 задание для Планировщика - создать бат-файл;

    2 задание для Планировщика - запустить на выполнение созданный бат-файл.

    Оба задания Планировщик может выполнить с наивысшими правами.


    Да, я Жук, три пары лапок и фасеточные глаза :))


    23 января 2014 г. 11:59
    Модератор
  • Нувот смотрите.

    Я прихожу на комп пользователя с флешкой, и мне надо не выходя из под этого пользователя запустить батник прописывающий кое-что в реестр с правами админа.

    И и как мне создать задания в планировщике которые будут выполняться с наивысшими правами в моей ситуации? 

    23 января 2014 г. 13:42
  • Для запуска Планировщика, флешка не требуется.

    При создании задания Планировщику, задаются права выполнения задачи:

    которая как предполагаю расположена на Вашей флешке.


    Да, я Жук, три пары лапок и фасеточные глаза :))


    24 января 2014 г. 1:47
    Модератор
  • Это конечно вариант...

    В сеансе пользователя запустить Планировщик от имени админа и там создать задание...

    Но вручную создавать задание это не так уж удобно...

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

    24 января 2014 г. 7:09
  • Уже лучше тогда выйти из сеанса юзера и перелогиниться под админом тогда...
    А нельзя эту операцию (перелогин туда-обратно) как-то вставить в батник, выполняемый с правами админа?
    24 января 2014 г. 7:20
  • Нувот смотрите.

    Я прихожу на комп пользователя с флешкой, и мне надо не выходя из под этого пользователя запустить батник прописывающий кое-что в реестр с правами админа.

    И и как мне создать задания в планировщике которые будут выполняться с наивысшими правами в моей ситуации? 


    Внимательно изучите подробную статью "Управление назначенными заданиями".

    Да, я Жук, три пары лапок и фасеточные глаза :))

    25 января 2014 г. 18:36
    Модератор
  • Уже лучше тогда выйти из сеанса юзера и перелогиниться под админом тогда...
    А нельзя эту операцию (перелогин туда-обратно) как-то вставить в батник, выполняемый с правами админа?

    я не представляю как это можно сделать...
    29 января 2014 г. 11:33
  • Нувот смотрите.

    Я прихожу на комп пользователя с флешкой, и мне надо не выходя из под этого пользователя запустить батник прописывающий кое-что в реестр с правами админа.

    И и как мне создать задания в планировщике которые будут выполняться с наивысшими правами в моей ситуации? 


    Внимательно изучите подробную статью "Управление назначенными заданиями".

    Да, я Жук, три пары лапок и фасеточные глаза :))

    Статью изучил спасибо!

    Придумал для себя не совсем удобный вариант:

    запускаю батник от имени админа, батник создаёт задание без наивысших прав,

    потом батник запускает оснастку Планировщик заданий (при запуске выдаётся УАКовский запрос)

    в Планировщике я созданному заданию отмечаю опцию "выполнить с наивысшими правами"

    а потом выполняю это задание

    но что меня не устраивает: я не вижу цмдшного окна выполнения батника который уже запускается из задания, т.е. не вижу результатов((

    29 января 2014 г. 11:39
  • Установите у "cmd.exe" параметр /k проверьте и напишите результат.

    Да, я Жук, три пары лапок и фасеточные глаза :))

    30 января 2014 г. 1:44
    Модератор
  • Если я правильно полял при создании задания на выполнение батника я должен был указать такой параметр: /TR "cmd.exe /k d:\1.bat" ?

    Вобщем я так сделал, но цмдшное окно не появилось ((

    30 января 2014 г. 10:28
  • Пока придумал выход из положения:

    /TR "cmd.exe /с d:\1.bat>d:\1.txt"

    т.е. я хочу  потом после выполнения батника запустить блокнот и прочитать d:\1.txt 

    Но не нравится что между строчками

    schtasks /run /tn batnik

    и строчкой

    notepad d:\1.txt

    приходится вставлять строчку pause

    т.к. d:\1.txt не успевает создаться (задание не успевает отработать) а блокнот уже запускается((

    Может чёт получше чем пауза посоветуете в данном случае?


    P.S.: И как сделать чтобы ошибки тоже перенаправлялись в d:\1.txt

    И что бы блокнот с нужной кодировкой открывал d:\1.txt

    • Изменено SANIOK_AV 30 января 2014 г. 11:26
    30 января 2014 г. 11:11
  • Если я правильно полял при создании задания на выполнение батника я должен был указать такой параметр: /TR "cmd.exe /k d:\1.bat" ?

    Вобщем я так сделал, но цмдшное окно не появилось ((


    Для выполнения cmd.exe /k, нужно указывать полный путь к cmd.exe.

    Да, я Жук, три пары лапок и фасеточные глаза :))

    31 января 2014 г. 5:28
    Модератор
  • Пока придумал выход из положения:

    /TR "cmd.exe /с d:\1.bat>d:\1.txt"

    т.е. я хочу  потом после выполнения батника запустить блокнот и прочитать d:\1.txt 

    Но не нравится что между строчками

    schtasks /run /tn batnik

    и строчкой

    notepad d:\1.txt

    приходится вставлять строчку pause

    т.к. d:\1.txt не успевает создаться (задание не успевает отработать) а блокнот уже запускается((

    Может чёт получше чем пауза посоветуете в данном случае?


    P.S.: И как сделать чтобы ошибки тоже перенаправлялись в d:\1.txt

    И что бы блокнот с нужной кодировкой открывал d:\1.txt


    Ваша команда cmd.exe /c - означает запустить, выполнить и закрыть окно. Ключ должен быть /k. Откройте окно cmd, наберите команду cmd /? и внимательно ознакомьтесь с назначениями ключей для команды cmd.

    Да, я Жук, три пары лапок и фасеточные глаза :))

    31 января 2014 г. 5:43
    Модератор
  • Для затравки:

    1. Создайте файл test.bat на Вашей флешке;

    2. Внесите в него единственную строку:

    C:\Windows\System32\cmd.exe /k Schtasks /query /FO LIST /V

    3. Сохраните файл и закройте его.

    Запустите с флешки файл test.bat и напишите результат.


    Да, я Жук, три пары лапок и фасеточные глаза :))


    31 января 2014 г. 6:43
    Модератор
  • Сделал как Вы сказали.

    В результате выдало в цмдшном окне информацию о заданиях и цмдшное окно не закрылось.

    31 января 2014 г. 9:57
  • Далее аккуратно, по командно, измените bat-файл, проверяя его корректную работу и руководствуясь статьёй http://www.oszone.net/11812/Schtasks1, ссылку на которую Вам давал ранее, приведите его к тому, что нужно Вам.

    Да, я Жук, три пары лапок и фасеточные глаза :))


    31 января 2014 г. 11:04
    Модератор
  • ну я пробовал изменить свой батник таким образом:

    в строке по созданию задания подправил параметр /TR "C:\Windows\System32\cmd.exe /k d:\1.bat"

    но при запуске задания цмдшное окно так и не появилось((

    Ещё раз опишу свой алгоритм:

    захожу в систему по юзером

    запускаю батник от имени пользователя состояшего в группе админов

    вот батник:

    REM создаю задание

    schtasks /create /ru admin /rp * /tn batnik /tr "C:\Windows\System32\cmd.exe /k d:\1.bat" /sc once /st 23:59

    REM запускаю оснастку и в созданном задании проставляю признак запускать с наивысшими правами

    taskschd.msc

    REM выполняю созданное задание

    schtasks /run /tn batnik

    Но цмдшного окна нет так как я понимаю задание выполняетсе в сеансе админа

    31 января 2014 г. 11:28
  • CMD-окна не будет, пока первым не будет запуск cmd.exe с ключом /k.

    Да, я Жук, три пары лапок и фасеточные глаза :))


    31 января 2014 г. 15:30
    Модератор
  • Так я вроди указал ключ /k

    Или он должен быть указан в каком-то другом месте?

    3 февраля 2014 г. 7:02
  • В начале, Вы должны открыть окно cmd, команда cmd.exe /k должна быть самой первой, все остальные команды должны выполняться в этом окне.

    Далее, Вы свой bat-файл проверяли на его работоспособность?


    Да, я Жук, три пары лапок и фасеточные глаза :))

    3 февраля 2014 г. 7:23
    Модератор
  • ну я пробовал изменить свой батник таким образом:

    в строке по созданию задания подправил параметр /TR "C:\Windows\System32\cmd.exe /k d:\1.bat"

    но при запуске задания цмдшное окно так и не появилось((

    Ещё раз опишу свой алгоритм:

    захожу в систему по юзером

    запускаю батник от имени пользователя состояшего в группе админов

    вот батник:

    REM создаю задание

    schtasks /create /ru admin /rp * /tn batnik /tr "C:\Windows\System32\cmd.exe /k d:\1.bat" /sc once /st 23:59

    REM запускаю оснастку и в созданном задании проставляю признак запускать с наивысшими правами

    taskschd.msc

    REM выполняю созданное задание

    schtasks /run /tn batnik

    Но цмдшного окна нет так как я понимаю задание выполняетсе в сеансе админа

    Ваше "задание" не выполняется.

    Вы не внимательно изучили статью, ссылку на которую Вам дал ранее.

    1. параметр /TN - название задачи, должно быть заключено в кавычки;

    2. командная строка, в bat-файле на флешке, для Вас, должна иметь вид:

    C:\Windows\System32\cmd.exe /k schtasks /create /ru admin /rp * /tn "batnik" /rl Highest /tr "F:\1.bat" /sc once /st 23:59

    Скопируйте её и вставьте в Ваш bat-файл на флешке, в этом файле, Вам нужно будет к параметру /RP вписать Ваш пароль, а так же, изменить путь к Вашему bat-файлу на флешке.

    Запустите этот файл с флешки и напишите результат.


    Да, я Жук, три пары лапок и фасеточные глаза :))





    3 февраля 2014 г. 9:36
    Модератор
  • Говорю же, так не получится... я ведь захожу под учёткой user а батник по созданию запускаю от учётки admin, и в таком случае, если указал ключ /rl Highest пишет ОШИБКА: Отказано в доступе

    На всякий случай перепроверил (сделал то что Вы сказали) так и есть - ошибка((

    4 февраля 2014 г. 8:35
  • У Учётной записи, которую Вы пытаетесь использовать, Пароль есть? Какую причину пишет Вам CMD? Вероятней всего, у Учётной записи, которую Вы пытаетесь использовать, "пустой" Пароль.

    Удалите параметры /ru; /rp, сохраните изменение и запустите bat-файл на исполнение. В CMD окне, должно отобразиться успешное создание Вашего задания, окно не должно закрыться.


    Да, я Жук, три пары лапок и фасеточные глаза :))

    4 февраля 2014 г. 9:27
    Модератор
  • Да нет, у учётки admin есть пароль.

    И если я создаю задание без выполнения его с наивысшими правами (без ключа  /rl Highest  ) то всё создаётся.

    4 февраля 2014 г. 10:01
  • Так Ваша задача решена или нет, если нет, на какой стадии остановилось решение?

    Да, я Жук, три пары лапок и фасеточные глаза :))

    4 февраля 2014 г. 10:19
    Модератор
  • Смотрите...

    Если отбросить создание задания с ключем  /rl Highest и потом в батнике запустить оснасткуи проставить в созданном задании вручную запуск с наивісшими правами, то на єтом єтапе всё ОК

    Потом если я следом в батнике произвожу выполнение этого задания (и кавычки в названии задания указывал и при создании  /TR "C:\Windows\System32\cmd.exe /k d:\1.bat" указывал всё равно цмдшного окна нет)

    Вы говорите чтоб я указал для цмд ключ /k в самом начале... где именно имеется в виду?

    Вы же не забывайте, я батник от другой учётки запускаю...

    Попробовал сделать ещё один батник (чтоб как-бы с самого начала цмдшное окно с ключем /k запустилось)

    REM create.bat - батник который сперва создаёт задание и т.д.

    runas /netonly /user:admin "C:\Windows\System32\cmd.exe /k d:\create.bat"

    Безрезультатно - цмдшного окна  1.bat не было((

    Причём при запуске оснастки запрос УАКа не выдавался и соответственно призак выполнить с наивысшими правами поставить не дало...

    4 февраля 2014 г. 13:02
  • И не будет, об этом я Вам уже писал ранее.

    test.bat - файл-задание для создания Вашей задачи "батник" в Планировщике.

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

    Запускать задачу Вам нужно из Планировщика, где Вы устанавливаете на вкладке "Общие" - "Выполнить с наивысшими правами", от имени какой учётной записи выполнить задание и так далее.

    Команда запуска созданной Вами задачи из командной строки выглядит так:

    schtasks /run /tn batnik


    Да, я Жук, три пары лапок и фасеточные глаза :))

    4 февраля 2014 г. 15:36
    Модератор
  • Всё верно - 1.bat отрабатывает без ошибок

    Но меня не устраивает что я не  вижу результатов (цмдшного окна 1.bat)

    Я реши что я буду результаты отработки направлять в текстовый файл (1.bat>1.txt), но столкнулся с рядом проблем в связи с которыми возникли вопросы:

    как сделать чтобы ошибки тоже перенаправлялись в 1.txt

    и что бы блокнот с нужной кодировкой открывал 1.txt?

    5 февраля 2014 г. 12:16
  • Если Ваш файл 1.bat, действительно отрабатывается без ошибок, то запускающий bat-файл, например запуск.bat, просто должен содержать одну строку:

    cmd.exe /k F:\1.bat

    поместите файл запуск.bat с вышеуказанной строкой и 1.bat на флешку, запустите на выполнение запуск.bat и напишите результат.

    Так как в 1.bat все задачи отрабатываются, cmd-окно сразу же и закрывается.

    Если это Ваш случай, в файл запуск_задачи.bat поместите команду:

    cmd.exe /k  "1.bat" && "F:\calc.exe"

    где, 1.bat - Ваше созданное задание, а дополнительная строчка  && "F:\calc.exe" будет блокировать закрытие cmd-окна.

    Можно так же, заменить 1.bat в выше приведённой команде, на запуск_задачи.bat с единственной строчкой:

    schtasks /run /tn batnik

    Не забудьте только предварительно скопировать программу Калькулятор на флешку ;)


    Да, я Жук, три пары лапок и фасеточные глаза :))








    5 февраля 2014 г. 13:41
    Модератор
  • В bat-файле создаваемого задания для Планировщика, у Вас он 1.bat, в конце добавьте pause

    В 1.bat у Вас станет:

    Первая строка\строки Вашего задания на исполнение, вторая строка (или последняя строка Вашего задания, должна оканчиваться строкой pause:

    Пример:

    Schtasks /query /FO LIST /V
    pause - без этой строчки, cmd-окно будет закрываться!!!


    Да, я Жук, три пары лапок и фасеточные глаза :))


    8 февраля 2014 г. 2:02
    Модератор
  • Обобщая данную Вам выше информацию, Вам необходимо:

    1. Создать файл Создание и выполнение задачи.bat содержащий следующие команды, и внеся соответствующее изменение буквы диска флешки:

    schtasks /create /tn "batnik" /tr "F:\1.bat" /sc once /st 23:59
    pause
    schtasks /run /tn batnik

    2. Внести последней строчкой в Ваш файл 1.bat - pause

    3. Поместить файлы Создание и выполнение задачи.bat и 1.bat на флешку.

    Запустить на выполнение файл Создание и выполнение задачи.bat. Результатом выполнения первой части, запуска файла Создание и выполнение задачи.bat должно быть:

    Открыв Планировщик задания, внеся в него и сохранив необходимые изменения, перейдите в cmd-окно и нажмите для продолжения выполнения, любую клавишу. 

    Результатом выполнения второй части, должно остаться открытым cmd-окном с результатом выполненного уже Вашего задания, заданного Вами в файле 1.bat:


    Да, я Жук, три пары лапок и фасеточные глаза :))



    8 февраля 2014 г. 2:47
    Модератор
  • Сделал как Вы сказали

    Если поподробнее:

    Зашел в систему с правами пользователя

    Запустил батник для создания и т.д.

    Задание создалось

    Запустил Планировщик от имени Админа, и не смотря на то, что при запуске Планеровщика выдавался запрос УАКа и не смотря на то что в созданном задании я поставил признак "Выполнять с наивысшими правами", при выполнении задания окно осталось открытым, но вот только результаты выполнения меня не устроили: Отказано в доступе и т.д. (((

    12 февраля 2014 г. 8:45
  • а если так:

    запустить сеанс cmd От админа. а в консоле запустить пакетник от имени системы, которая по умолчанию обладает наивысшими правами.

    psexec \\localhost -s d:\1.cmd

    psexec входит в состев пакета PSTools. Его можно положить в папку Windows чтобы каждый раз не указывать путь.

    18 февраля 2014 г. 0:33