ファイルがフォルダであるかどうかを取得するためにPItemIDListからDelphiとWindows APIを使用することは可能ですか?このコードスニペットを使用すると、ファイルの名前だけを取得できます。相対PIDL用DelphiのWindowsを使用してファイル情報を取得するapi
procedure TMain.FolderMonitorFileChange(aSender: TObject; aPIDL: PItemIDList);
var
FileInfo : SHFILEINFOW;
begin
SHGetFileInfo(LPCTSTR(aPIDL), 0 , FileInfo, SizeOf(FileInfo), SHGFI_PIDL or SHGFI_DISPLAYNAME or SHGFI_TYPENAME or SHGFI_ATTRIBUTES);
ShowMessage('File change notification: ' + FileInfo.szDisplayName + ' ' + FileInfo.szTypeName);
end;
おかげ
あなたはhttp://stackoverflow.com/questions/3780028/how-can-i-get-the-description-of-a-file-extension-in-net –
@を見てきましたポール彼はファイルではなくPIDLを持っています –
'IShellFolder :: GetAttributesOf'を呼び出し、' SFGAO_FOLDER'をチェックします。 –