Компьютерный портал
| Расширенный
  • Страница 3 из 9
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 8
  • 9
  • »
Модератор форума: Barmenchik, Drinko, V-Efremov, sander23, MedMeks  
Восстанавливаем работу "sfc /scannow" в сборках 142xx
dog97
Отредактировано dog97 - 08.03.2016, 22:33
Аватар dog97

Почетный

Сообщений: 439

у меня просто в первый раз отказало в доступе, сразу повторил запуск, и всё прошло как по маслу.
sysprg
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата dog97 ()
в первый раз отказало в доступе, сразу повторил запуск, и всё прошло как по маслу.
Интересно, зря я в nul отправил сообщения takeown, icalcs: в таком варианте интересно было бы посмотреть на каком файле при первом проходе бэтч-файл споткнулся из сообщений этих утилит. Но вот у меня и еще у нескольких все чисто прошло за один запуск.
netWanderer
Аватар netWanderer

Администратор

Сообщений: 4946

sysprg,
Извините меня, не смог сделать .log, вы абсолютно правы - проблема в получении прав на доступ к конечной папке. Меня натолкнула мысль уважаемого V-Efremov'а - попробовать сделать это в ручном режиме. Я изменил права доступа к конечной папке "приоткрыл" ее и копирование прошло вручную. Затем не меняя прав доступа (приоткрытых) - выполнил ваш скрипт - копирование сработало. Сейчас верну права обратно. sfc /scannow - заработала.
sysprg
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата netWanderer ()
Меня натолкнула мысль уважаемого
Понятно, собственно назначение бэтч-файла в том и состояло, чтобы исключить ручные действия и у большинства, как я понял, проблем не было. Потому мне хотелось понять, почему же в некоторых случаях бэтч не срабатывал. Ладно, подожду до следующего подобного случая, если появится smile
V-Efremov
Нет аватара

Почетный

Сообщений: 734

Цитата netWanderer ()
копирование прошло вручную

После этого уже и бэтч-файл не нужен - файл уже скопирован. smile и sfc /scannow работает.
Кстати, после выполнения бэтч-файла права на конечную папку остаются за администратором.
netWanderer
Отредактировано netWanderer - 08.03.2016, 23:24
Аватар netWanderer

Администратор

Сообщений: 4946

sysprg,
Посмотрите еще на один скрин, обратите внимание на коменты между выполнением строк (я подтер частично, то что вы предлагали). Вроде как на конечном этапе копирования отказано.
sysprg
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата netWanderer ()
Вроде как на конечном этапе копирования отказано.
Ну совсем не понимаю, и владение передано административной группе и права переданы текущему пользователю, а команда копирования не сработала. Но, я так понял, при втором проходе все в порядке? Если так, то значит мне нужно вставить временную задержку в этом бэтч-файле ПЕРЕД выполнением команды копирования. Возможно, у Вас СЛИШКОМ БЫСТРЫЙ процессор smile
sysprg
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата V-Efremov ()
после выполнения бэтч-файла права на конечную папку остаются за администратором.

Да, конечно, до выхода НОВОГО БИЛДА smile
netWanderer
Отредактировано netWanderer - 09.03.2016, 00:53
Аватар netWanderer

Администратор

Сообщений: 4946

Цитата sysprg ()
Но, я так понял, при втором проходе все в порядке?

При втором и последующих не срабатывает. Атрибуты доступа к конечной папке под Админом не меняются в ходе запусков. Но достаточно открыть/установить атрибут "Изменение" для Администратора в этой конечной папке - ваш бэтч-файл прекрасно отрабатывает.
sysprg
Отредактировано sysprg - 09.03.2016, 09:48
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата netWanderer ()
Атрибуты доступа к конечной папке под Админом не меняются в ходе запусков

Мне представляется, что сыграл роль добавленный Вами ключ /A в команде takeown: в моем оригинальном файле формат команды был "takeown /F %to% /R>nul" и без ключа /A владение директорией передавалось ТЕКУЩЕМУ пользователю, который должен был быть администратором. А добавление ключа /A осуществляет передачу владения не текущему пользователю, а АДМИНИСТРАТИВНОЙ ГРУППЕ, о чем сказано в сообщении на копии экрана, который Вы выложили. Дело в том, что последующая команда "icacls DirName netWanderer:F" предоставляет ПОЛНЫЙ доступ к директории DirName конкретно пользователю netWanderer. "netWanderer:F" означает, что пользователь netWanderer может делать с DirName все, что угодно вплоть до удаления, а открытие директории - минимальный уровень прав. То, что был опущен ключ /R в команде takeown, значения не имеет, поскольку в целевой директории не было поддиректорий. P.S: но в любом случае, этот бэтч-файл был ОДНОРАЗОВЫЙ и если сегодня придет новый билд, то больше он не понадобится никому, МS сборщики 14279 ЗЕВНУЛИ положить DLL в нужную директорию и больше это не повторится.
oleg1974
Отредактировано oleg1974 - 09.03.2016, 10:55
Аватар oleg1974

Почетный

Сообщений: 54

А кто нибудь шаманил с системой 32 bit? А то у меня нет такой папки C:\Windows\WinSxS\amd64........... Соответственно батник пишет, что не может найти файл из папки WinSxS
sysprg
Отредактировано sysprg - 09.03.2016, 12:17
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата oleg1974 ()
у меня нет такой папки C:\Windows\WinSxS\amd64
Должна быть аналогичная, скажем без префикса amd64. Должна быть x86 вместо amd64. Посмотрите под спойлером.
netWanderer
Аватар netWanderer

Администратор

Сообщений: 4946

sysprg,
Еще раз спасибо за ваш ответ под № #40 - для себя подчеркнул, кратко но информативно.

P.S. Только один человек спросил про 32-х разрядную систему. Заглянул в ваш спойлер в последнем ответе. У меня то же нет под рукой 32-х разрядки. Но по аналогу имеются 2 папки:
В качестве источника - C:\Windows\WinSxS\x86_microsoft-windows-servicingstack-onecore_31bf3856ad364e35_10.0.14279.1000_none_fe74528a1f2b72fd
В качестве назначения - C:\Windows\WinSxS\x86_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.14279.1000_none_c982bd78c7285567
Не знаю на сколько точно эти имена соответствуют в 32-х разрядной системе, но в принципе можно было бы подкорректировать ваш бэтч-файл в настройках set и кому-нибудь попробовать его запуск на 32-х разрядке.
Drinko
Аватар Drinko

DG Win&Soft
Администратор

Сообщений: 11628

Накидал универсальный патч, может кому пригодится:

fix_sfc_142xx.zip
-------
Во имя ALTа, CTRLа и святого DELETE
Enter
-------
База знаний по Windows 8.1 | Качаем Драйвера
oleg1974
Отредактировано oleg1974 - 09.03.2016, 20:59
Аватар oleg1974

Почетный

Сообщений: 54

Получилось. yahoo Система 32 bit/pro. За основу взял батник-патч от Drinko из сообщения 44. У меня он не заработал. Я покопался в папке WinSXS. Нашел нужные директории. Привожу строчки, которые я скорректировал под мою винду

set c1=%windir%\WinSxS\%PROCESSOR_ARCHITECTURE%_microsoft-windows-servicingstack
set c2=31bf3856ad364e35_10.0.14279.1000_none
set from=%c1%-onecore_%c2%_fe74528a1f2b72fd
set to=%c1%_%c2%_c982bd78c7285567

Остальное в батнике без изменений.
запуск с правами админа. Получилось со второго запуска.
sfc /scannow работает.
  • Страница 3 из 9
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 8
  • 9
  • »
Поиск:
В связи с введением в действие Постановления Правительства Российской Федерации от 14.11.2023 № 1905 т.н. "о запрете популяризации VPN" с 1 марта 2024 года - любое обсуждение способов обхода блокировок и VPN на портале запрещено!
Windows 11
Windows 10
Windows 8.1
Популярное
Опрос
Нравятся ли вам изменения произошедшие в Windows 10?
Всего ответов: 8510

Статистика Форума
Последние обновления тем
Популярные темы
Новые пользователи
21.12.2024|21:00
21.12.2024|13:37
20.12.2024|21:37
20.12.2024|20:09
20.12.2024|14:58
20.12.2024|09:49
20.12.2024|09:31
19.12.2024|11:27
19.12.2024|11:19
19.12.2024|11:05