私のプロジェクトでは、Windows Portable Device (WPD) API を使用して、モバイル デバイスのコンテンツを列挙しています。WPD API 列挙ガイド。API プログラミング ガイドに示されているように、各オブジェクトを列挙し、それらのプロパティを表示できます。WPD API プロパティ ガイド
ただし、名前に が含まれるオブジェクトの名前を取得しようとすると.
、返される値はその位置で切り捨てられます.
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
私はとても混乱しています。
編集: そこで、WPD API サンプル ソフトウェアを使用して com.example オブジェクトのすべてのオブジェクト プロパティを取得しました。WPD 自体が完全なフォルダー名を取得できないことがわかります。
御時間ありがとうございます!