4

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

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

Когда пакетный файл запускается из командной строки, он работает отлично.

При запуске из планировщика задач команда XCopy отображает ошибку:

Invalid drive specification

Если это имеет значение, диск является NAS и сопоставляется с компьютером с использованием локальных учетных данных с NAS (в сети нет активного каталога).

2 ответа2

4

Я видел такое поведение раньше, когда пытался выполнить резервное копирование на подключенный NAS. Я не знаю почему, но нужно помнить, что X: диск сопоставлен с \myserver \myfolder.

Вручную это может быть решено путем доступа к целевой папке. Как только вы "коснетесь" X:, Windows "запомнит", что она есть. Программно (то есть из пакета) вы можете либо попытаться получить доступ к сопоставленной папке, либо, возможно, даже переназначить ее (используя команду net ) в пакете, перед командой XCopy.

0

Этот ответ приходит очень поздно, но я нашел другой способ обойти проблему. Кажется, это вызвано другим контекстом при запуске из запланированной задачи (даже если выбран « Run with highest privileges ), а не из привилегированного приглашения.

Настройте значение реестра EnableLinkedConnections . Это значение позволяет Windows Vista and Windows 7 совместно использовать сетевые подключения между токеном отфильтрованного доступа и токеном полного доступа администратора для члена группы «Администраторы». После настройки этого значения реестра LSA проверяет, существует ли другой токен доступа, связанный с текущим сеансом пользователя, если сетевой ресурс сопоставлен с токеном доступа. Если LSA определяет, что существует связанный токен доступа, он добавляет сетевой ресурс в связанное местоположение.

  1. Начать regedit
  2. Найдите и щелкните правой кнопкой мыши раздел реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System .
  3. Укажите «Новый», а затем нажмите «Значение DWORD».
  4. Введите EnableLinkedConnections и нажмите клавишу ВВОД.
  5. Щелкните правой кнопкой мыши EnableLinkedConnections и выберите команду « Изменить».
  6. В поле «Значение» введите 1 и нажмите кнопку «ОК».
  7. Закройте редактор реестра и перезагрузите компьютер.

Ссылка здесь.

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