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

Не слишком ли сложно запускать приложения по событиям? Вместо этого я могу использовать ярлык или запускать событие каждые 30 минут или около того, чтобы запустить задание. (Обычно я прикрепляю его на 30 минут + достаточно времени для завершения работы.)

2 ответа2

1

Я делаю это также,

Вот экспорт XML моей задачи. Вы можете импортировать его и настроить для своего случая использования:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2013-03-29T10:22:52.2396539</Date>
    <Author>XXXXXXX</Author>
    <Description>TODO: run rsyn on this trigger to backup directories!!</Description>
  </RegistrationInfo>
  <Triggers>
    <EventTrigger>
      <Enabled>true</Enabled>
      <Subscription>&lt;QueryList&gt;&lt;Query Id="0" Path="Microsoft-Windows-DriverFrameworks-UserMode/Operational"&gt;&lt;Select Path="Microsoft-Windows-DriverFrameworks-UserMode/Operational"&gt;*[System[Provider[@Name='Microsoft-Windows-DriverFrameworks-UserMode'] and EventID=2101]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</Subscription>
    </EventTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>XXXXXX</UserId>
      <LogonType>InteractiveToken</LogonType>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>P3D</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <ShowMessage>
      <Title>Yes 2</Title>
      <Body>USB disk ok</Body>
    </ShowMessage>
  </Actions>
</Task>

Этот файл показывает всплывающее сообщение, когда USB-ключ вставлен.

Возможно, вам придется настроить его.

С уважением

0

Проверьте предыдущий ответ, который я дал на этом сайте, чтобы добавить обработчик событий, используя скрипт с Powershell (встроенный в Windows 7), который запускается при входе в систему с помощью Task Scheduler.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .