У нас есть сценарий vbs All Users, который создает группу принтеров (примерно 25 принтеров), когда пользователь входит в систему. Запуск занимает минуту или две, поэтому мы не хотим, чтобы он запускался снова, если в этом нет необходимости. Как я могу установить какой-то флаг, чтобы этот скрипт не запускался, если он уже был запущен для пользователя? Удаление скрипта после его запуска не сработает, потому что его нужно запустить для последующих пользователей, которые, возможно, еще не вошли в систему.
Самым простым решением, вероятно, будет поиск скриптом определенного значения реестра в HKCU. Если он найдет значение, выйдите. Если значение не найдено, выполните работу, запишите значение и выйдите.
Но в конечном итоге вам нужно будет изменить сценарий, и вы захотите, чтобы он снова запустился. Так что вам, вероятно, следует сделать значение реестра своего рода номером версии скрипта. Если значение не существует или совпадает с версией скрипта, выйдите. В противном случае выполните работу, запишите значение и выйдите.