В моем проекте я использую API Windows Portable Device (WPD) для перечисления содержимого мобильного устройства. Руководство по перечислению API WPD. Я могу перечислить каждый объект и просмотреть его свойства, как показано в руководстве по программированию API. Руководство по API API WPD
Однако, когда я пытаюсь получить имя объекта с .
внутри имени, возвращаемое значение усекается при этом .
HRESULT hr = objectProperties->GetStringValue(WPD_OBJECT_NAME, &strOriginalFileName);
if(FAILED(hr))
return false;
PWSTR wideStr = strOriginalFileName;
char buffer[20];
wcstombs(buffer, wideStr, 20);
qDebug() << buffer;
Так, например, объект (папка на устройстве) с именем com.example
возвращается как com
. Это становится очевидной проблемой, когда я пытаюсь найти конкретный путь к файлу на устройстве.
Я не могу понять, что случилось. Я не понимаю, как на самом деле это имя файла? Является ли example
другим свойством или чем-то внутри объекта com
? Я очень смущен.
EDIT: Поэтому я использовал образец программного обеспечения WPD API для извлечения всех свойств объекта объекта com.example, и вы можете видеть, что сам WPD не может получить полное имя папки.
Спасибо за ваше время!