Как мы можем проверить (вернуть true или false), активирована ли папка или файл для «Всегда доступен в автономном режиме»? Я использую Microsoft Sync Center.
Проверить, всегда ли файл или папка доступны в автономном режиме?
comment
docs.microsoft.com/en-us/windows/ рабочий стол/FileIO/
- person James Hill   schedule 04.12.2018
comment
@JamesHill, как это поможет? Вопрос касается настроек конкретного приложения в отношении папок, а не атрибутов локального файла.
- person Panagiotis Kanavos   schedule 04.12.2018
comment
используя ссылку @JamesHill и stackoverflow.com/questions/41241247/, возможно, вы сможете найти ответ
- person   schedule 04.12.2018
comment
@Matt Извлечь значки? Это вообще перебор. Также он говорит только о папках. Я ищу файлы и папки. Должен быть более простой способ...
- person eMi   schedule 04.12.2018
comment
Я полагаю, что это тоже будет не так просто, потому что это Центр синхронизации, который объявляет «Всегда доступен в автономном режиме» в раскрывающемся меню. Это означает, что следует использовать такой API для Центра синхронизации.
- person Belurd   schedule 04.12.2018
comment
если кому-то интересно, я сам придумал решение через несколько часов
- person eMi   schedule 06.12.2018
Ответы (1)
Мне удалось получить необходимую информацию с помощью поставщика WMI: https://docs.microsoft.com/de-de/previous-versions/windows/desktop/offlinefiles/about-offline-files-wmi-provider
РЕДАКТИРОВАТЬ:
Не забудьте добавить ссылку на System.Management
.
Я придумал следующий фрагмент:
ManagementScope scope = new ManagementScope("\\\\.\\ROOT\\cimv2");
ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_OfflineFilesItem");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
ManagementObjectCollection queryCollection = searcher.Get();
foreach (ManagementObject m in queryCollection)
{
var pinInfo = (ManagementBaseObject)m.GetPropertyValue("PinInfo");
if (pinInfo != null)
{
if ((bool)pinInfo.GetPropertyValue("Pinned"))
{
//the file or folder is set to "always available offline"
var itemPath = m["ItemPath"]
}
}
}
person
eMi
schedule
04.12.2018
Пожалуйста, рассмотрите возможность добавления кода. Этот ответ лишь немного лучше, чем размещение только ссылки.
- person user247702; 04.12.2018
@Stijn Да, конечно, но забавный факт в том, что единственное, что я здесь получил, это только ссылки без дополнительных объяснений. Но да, есть мое решение. Надеюсь, это поможет кому-то еще в будущем...
- person eMi; 06.12.2018