/**************************************************************************
 *        ISF_Printers_fnEnumObjects
 */
static HRESULT WINAPI ISF_Printers_fnEnumObjects (IShellFolder2 * iface,
                HWND hwndOwner, DWORD dwFlags, LPENUMIDLIST * ppEnumIDList)
{
    IGenericSFImpl *This = (IGenericSFImpl *)iface;

    TRACE ("(%p)->(HWND=%p flags=0x%08lx pplist=%p)\n",
           This, hwndOwner, dwFlags, ppEnumIDList);

    if(!ppEnumIDList) return E_OUTOFMEMORY;
    *ppEnumIDList = IEnumIDList_Constructor();
    if (*ppEnumIDList)
        CreatePrintersEnumList(*ppEnumIDList, dwFlags);

    TRACE ("-- (%p)->(new ID List: %p)\n", This, *ppEnumIDList);

    return (*ppEnumIDList) ? S_OK : E_OUTOFMEMORY;
}
Example #2
0
HRESULT WINAPI CPrintersEnum::Initialize(HWND hwndOwner, DWORD dwFlags)
{
    if (CreatePrintersEnumList(dwFlags) == FALSE)
        return E_FAIL;
    return S_OK;
}