une dll est une compilation visant à mettre à disposition des fonctions.
Pour les appeler, il faut donc connaître les API de ces dernière (ou prototype)
En tapant shimgvw api dans google, on tombe assez vite sur ceci :
http://www.reactos.org/pipermail/ros-de ... 10364.html
En gros les fonctions offertes sont :
VOID ImageView_Fullscreen(HWND hwnd, HINSTANCE hInst, LPCWSTR path, int nShow);
VOID ImageView_FullscreenA(HWND hwnd, HINSTANCE hInst, LPCSTR path, int nShow);
VOID ImageView_FullscreenW(HWND hwnd, HINSTANCE hInst, LPCWSTR path, int nShow);
VOID ImageView_PrintTo(HWND hwnd, HINSTANCE hInst, LPCWSTR path, int nShow);
VOID ImageView_PrintToA(HWND hwnd, HINSTANCE hInst, LPCSTR path, int nShow);
VOID ImageView_PrintToW(HWND hwnd, HINSTANCE hInst, LPCWSTR path, int nShow);
VOID ImageView_fullscreenW(HWND hwnd, HINSTANCE hInst, LPCWSTR path, int nShow);
Dans le cas de ImageView_Fullscreen, le type de retour n'est pas un
int mais un
void, ou plutôt
none dans le langage autoit, après dans DLLCALL, on doit passer chaque paramètre dans l'ordre de l'API en précisant à chaque fois type, param :
"HWND",$hwnd,"ptr",$hInst,"wstr",$path,"int",$nShow
La difficulté maintenant va être de trouver de quel handle on parle pour $hwnd (je sens bien l'handle windows de la fenêtre en cours), $hInst pourait être l'handle de la zone graphique à remplir, $path c'est surement le fichier image, et $nShow un paramètre d'affichage à déterminer. Bon courage ^^
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.