На даний момент я працюю на Vista, і я хотів би вручну виконати ті самі операції, що і моя служба Windows. Оскільки служба Windows працює за допомогою облікового запису локальної системи, я б хотів наслідувати цю саму поведінку. В основному, я хотів би запустити CMD.EXE під обліковим записом локальної системи.
Я знайшов в Інтернеті інформацію, яка передбачає запуск CMD.exe за допомогою команди DOS Task Scheduler AT, але я отримав попередження Vista про те, що "завдяки покращенню безпеки це завдання буде виконуватися у виключений час, але не в інтерактивному режимі". Ось зразок команди:
AT 12:00 /interactive cmd.exe
Ще одне рішення запропонувало створити вторинну службу Windows через Service Service Control (sc.exe), яка просто запускає CMD.exe.
C:\sc create RunCMDAsLSA binpath= "cmd" type=own type=interact
C:\sc start RunCMDAsLSA
У цьому випадку сервіс не запускається і приводить до нього таке повідомлення про помилку:
FAILED 1053: The service did not respond to the start or control request in a timely fashion.
Третьою пропозицією було запустити CMD.exe за допомогою запланованого завдання. Хоча ви можете виконувати заплановані завдання під різними обліковими записами, я не вважаю, що обліковий запис локальної системи є одним із них.
Я також спробував використовувати Runas, але думаю, що я стикаюся з тим же обмеженням, що і під час виконання запланованого завдання.
Поки кожна моя спроба закінчилася невдачею. Будь-які пропозиції?
-d
додаванням, так що я можу продовжувати використовувати консоль, з якої запустив її.