다음을 통해 공유


IExplorerBrowser::FillFromObject 메서드(shobjidl_core.h)

결과 폴더를 만들고 항목으로 채웁니다.

구문

HRESULT FillFromObject(
  [in] IUnknown                    *punk,
  [in] EXPLORER_BROWSER_FILL_FLAGS dwFlags
);

매개 변수

[in] punk

형식: IUnknown*

IResultsFolder를 채울 원본 개체의 인터페이스 포인터입니다. IDataObject 또는 INamespaceWalk와 함께 사용할 수 있는 모든 개체일 수 있습니다.

[in] dwFlags

형식: EXPLORER_BROWSER_FILL_FLAGS

EXPLORER_BROWSER_FILL_FLAGS 값 중 하나입니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

인터페이스 포인터 펑크를 통해 전달된 개체는 IResultsFolder를 채웁니다.

매개 변수 dwFlags 는 탐색을 나타내는 플래그를 제외하고 EXPLORER_BROWSER_FILL_FLAGS 또는 BrowseObjectwFlags 매개 변수에 정의된 플래그 중 일부가 될 수 있습니다.

매개 변수 펑크는INamespaceWalk 에서 사용할 수 있는 모든 개체일 수 있습니다. EBF_SELECTFROMDATAOBJECT 사용하여 호출되는 경우 펑크는IDataObject여야 하며 네임스페이스는 모든 피어 항목을 포함하여 데이터 개체의 부모 수준에서 안내되지만 데이터 개체에 포함된 항목만 선택합니다. 이 플래그는 FOLDERSETTINGSFWF_CHECKSELECT 사용하도록 설정된 경우에 가장 일반적으로 사용되므로 데이터 개체에서 컴파일된 항목 집합을 검사 선택할 수 있습니다.

참고 데이터 개체의 PIDL(항목 식별자 목록)에 대한 포인터가 정규화된 경우 데스크톱 폴더 항목이 목록에 추가되므로 부모 폴더를 성공적으로 걸을 수 없습니다.
 
이 메서드는 두 번 이상 호출될 수 있으며, 각 연속 호출은 보기에 추가 항목을 추가합니다. IExplorerBrowser::RemoveAll 을 호출하여 결과 폴더의 내용을 지울 수 있습니다. 이 함수는 사용자가 원하는 경우가 아니면 새 항목을 보기로 끌어다 놓지 못하도록 EBF_NODROPTARGET 사용하여 호출해야 합니다. 브라우저가 ResultsFolder에 유지되도록 EBO_NAVIGATEONCE 설정하여 사용자가 데이터 개체에 표시될 수 있는 폴더로 이동할 수 없도록 하는 것이 좋습니다.

결과 폴더의 항목을 직접 조작하려면 IExplorerBrowser::GetCurrentView 를 호출하여 ExplorerBrowser에서 보기를 가져오고 GetFolder를 사용하여 결과 폴더에 대한 뷰를 요청합니다. 가져온 결과 폴더를 사용하면 IExplorerBrowser 가 제공하는 메서드보다 더 유연하게 폴더의 데이터를 조작할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 shobjidl_core.h(Shobjidl.h 포함)

추가 정보

FOLDERFLAGS

IExplorerBrowser