bonjour,
suite de mes aventures pour le preview (fin je l espere!!!)
donc sous seven je recupère le IPreviewHandler avec la fonction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
IPreviewHandler* fviewer_get_preview(IShellFolder *isf_folder, LPITEMIDLIST *pidl_file)
{
	char	az_log[512];
	IPreviewHandler *iph_file = NULL;
	HRESULT	h_res = S_OK;
	file_log_debug(h_dlg_main,  "IPreviewHandler* fviewer_get_preview(IShellFolder *isf_folder, LPITEMIDLIST *pidl_file)" , 256); 
	if (pidl_file != NULL)
	{//extract from file
		int i_prgf = 0;
		h_res = isf_folder->lpVtbl->GetUIObjectOf(isf_folder, NULL, 1, pidl_file, &IID_IPreviewHandler, &i_prgf, &iph_file);
		if(h_res != S_OK)
		{
			sprintf_s(az_log, sizeof(az_log), "Error GetUIObjectOf(IPreviewHandler): %x", h_res);
			file_log_debug(h_dlg_main,  az_log , sizeof(az_log));
		}
		else
			file_log_debug(h_dlg_main,  "GetUIObjectOf(IPreviewHandler): OK" , 256); 
	}
 
	return iph_file;
}
et le resultat sous seven sest ok , j'ai accès au preview
cependant sous XP la fonction renvoie en H_RESULT:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Error GetUIObjectOf(IPreviewHandler): 80040154
A quoi correspond ce code ...comment corriger (ou au moins un indice :p)