순수 WINAPI 예 : 데이비드 헤퍼는 지적
IShellItem2* pItem2 = NULL;
hr = pItem->QueryInterface(&pItem2);
if (SUCCEEDED(hr))
{
FILETIME ft = {0};
pItem2->GetFileTime(PKEY_DateCreated, &ft);
SYSTEMTIME st = {0};
::FileTimeToSystemTime(&ft, &st);
wprintf(
L"Date Created: %04d-%02d-%02d %02d:%02d:%02d\n",
st.wYear, st.wMonth, st.wDay, st.wHour, st.wMinute, st.wSecond);
pItem2->Release();
}
또한, 당신은
ALL 쉘 항목이 생성 날짜를 가지고, 확신?
과 같이 보일 것 델파이로 번역 :
var
Item: IShellItem;
Item2: IShellItem2;
ft: TFileTime;
st: TSystemTime;
....
Item2 := Item as IShellItem2;
OleCheck(Item2.GetFileTime(PKEY_DateCreated, ft));
Win32Check(FileTimeToSystemTime(ft, st));
이것은 델파이 문제가 아닙니다. 이것은 순수한 COM 쉘 질문입니다. –
'IShellItem'을'IShellFolder2'에 바인드합니까? 아니면 PIDL에 바인딩합니까? –
조사 후 질문을 변경했습니다. – user382591