В итоге я переместил сценарий в папку в корне C: и затем запустил сценарий от имени пользователя SYSTEM. Он захватывает текущих пользователей, вошедших в систему, когда он запускается, поэтому мне больше не нужно его запускать от имени этих пользователей. Работал отлично с тех пор, как начал работать, и мой инвентарь накапливается сам.
Я думаю о двух возможностях, которые вы можете попробовать:
Создайте пользователя службы, у которого есть право запускать пакетные задания и входить в систему в качестве службы, запланировать выполнение задачи в соответствии с тем, вошел ли он в систему или нет. Это работает, и я использую его часто.
Используйте командлет start-process. Я считаю, что он способен делать то, что вы хотите, но не могу сейчас проверить себя (на iphone).
Вы пробовали запускать его вот так:
start "" %systemroot%\System32\windowspowerShell\v1.0\powershell.exe -exec bypass -noprofile -windowstyle hidden -file "C:\Users\%LogonUser%\Scripts\CallHome.ps1"
Вы также можете проверить Запустить ли пользователь зарегистрирован или нет
на вкладке Общие в свойствах задачи. В этом режиме программа запускается скрыто.
Проблема может заключаться в том, что вам нужно указать пароль пользователя при настройке задачи.