Alors, j'ai pas le code sous la main, mais grossomodo :
1/ Cherche un ActiveX nommé "binreader" ou un truc du genre, qui permette de lire en mode binaire un fichier.
2/ Déplace toutes tes images EN DEHORS de ton répertoire IIS (mettons que ton site est dans D:\WEBSITE, mets les images dans D:\IMAGESWEB.
3/ Crée un fichier "picture.asp" prenant en paramètre "nomImage" (qui va contenir l'adresse relative de ton image à partie de D:\IMAGESWEB, ou alors un numéro, allant dans une table rechercher le nom complet de l'image -ou même)
4/ Dans ce fichier, fait :
IF Split(Request.ServerVariables("HTTP_REFERER" ), "/" )(2) <> Request.ServerVariables("HTTP_HOST" ) THEN
' Ca doit pas être exactement ça, cherche la syntaxe exacte, afin de comparer le nom du serveur REFERER et le nom du serveur de ton site.
Dans ce IF, fait un :
Response.BinaryWrite binRead("D:\IMAGESWEB\" & Request.QueryString("nomImage" ))
Et dans le ELSE, tu fais :
Response.BinaryWrite BinRead("D:\IMAGESWEB\foulecamp.gif" )
avec cette image qui affiche un truc style : "Les liens directs vers ma galerie d'image sont interdits"
Ainsi, les gens devront passer par ton site pour afficher les images.
PS: Si un petit malin modifie son header avant d'accéder à ton image, il sera potentiellement capable de la voir tout de même. Reste à voir si ça arrive souvent. Dans le doute, dans la page "default.asp", ajoute "session("CANSEEPICTURES" ) = true, et ajoute un test sur cette variable de session dans la page "picture.asp".
Ensuite, dans tes pages, au lieu d'utiliser par exemple :
<img src="/pictures/monimage.jpg">, tu utiliseras alors :
<img src="picture.asp?nomImage=\monImage.jpg">
Je peux pas détailler plus, j'ai des soucis d'hébergeur actuellement, donc je ne peux pas accéder à mon site 