Я использую API WPD (портативные устройства Windows) в своей службе Windows для передачи файлов из папки на устройстве mtp в указанную папку на моем жестком диске.
В целях тестирования я создаю файл xyzdata.txt в папке на устройстве mtp. Итак, когда код достигает точки, где он делает это:
hr = content->Properties(&properties);
if (SUCCEEDED(hr))
{
hr = GetStringValue(properties.Get(),
selection,
WPD_OBJECT_ORIGINAL_FILE_NAME,
&originalFileName);
}
«hr» заполнен «ERROR_BUSY», а originalFileName вообще не задан. Есть ли причина, по которой WPD_OBJECT_ORIGINAL_FILE_NAME не может быть установлен для некоторых объектов, или это проблема с получением данных?
Любая помощь будет неоценимой. Если вам нужно больше кода, я опубликую его здесь.
Редактировать:
Код ошибки,
hr = HRESULT_FROM_WIN32(ERROR_BUSY): запрошенный ресурс используется.
Кроме того, устройство является устройством Android. И иногда, когда мы подключаем USB-кабель обратно, имя файла доступно. Но это редкость. Пожалуйста, дайте мне знать, что происходит