especially when it can be evaded by using print screen... of some other form of screen capture that doesnt use keypresses (or product keys)
If the visitor is using IE 5.x or higher, there is a solution to the dreaded screen print. Open the details.html template and add this to the top:
{header}
<script language="JavaScript" type="text/JavaScript">
window.setInterval("window.clipboardData.setData('Text','[The clipboard is temporarily disabled. To restore normal function, simply close the web browser currently viewing a full size image at {site_name}]')",20);
</script>
This code sets the clipboard data to the text message "clipboard is temporarily disabled" every 20 milliseconds. This will also block the capture function of any software that uses the system clipboard which is all of them in my experience.
I've tested this under MS Windows, not sure about Macintosh. I'd estimate 85% of my visitors are using MS Windows and IE 5.x or higher so this is a fairly effective javascript.
According to
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/clipboarddata.asp the following code is supposed to clear the clipboard of any image data. This allows the user to retain the ability to copy and paste text, URL, file and HTML data.
window.setInterval('window.clipboardData.clearData("Image")',20);
At one time a couple days ago, I had this working. The user couldn't screen capture to the clipboard but could still cut and paste text. Since then I haven't gotten it to work. the clearData('Image') method just clears all data. Not sure what I'm doing wrong and it's probably something to do with my other javascripts. In any case I present it here for everyone's benefit.
Just thought I'd share what I've learned recently.