Apologies in advance: I'm not a Windows user, so I couldn't test this solution. But as it sounds like the perfect match, I decided to answer anyhow.
A little Google-Fu turned up Cornice, which seems to be exactly what you're after:
Cornice is a cross-platform image viewer written in Python + wxPython + PIL. It doesn't pretend to be complete, fast, or even useful, but I like it and it is the viewer I use on both Linux and Windows.
(Source: Cornice project page)
Cornice is available as "portable app" – which means you can download the
.zip file and unpack it to the disk. Then it can be run without installation required.
Now let's see how it matches your requirements:
- standalone exe on a disk: Yes. It's portable, requires no installation, and can be run directly from the disk.
- when launched would play a full-screen random slideshow of all the images on the disc: Here I'm not sure if it can be automated. As image viewers usually accept at least an image as parameter on launch, this could be achieved e.g. using the
autorun.inf feature, calling the app passing the directory or at least one of the images in there as parameter. Might require a little user-interaction to start the slideshow then.
- an autoplay action: As described, using
autorun.inf. I'd recommend placing the action (full command with parameter) inside a batch file next to it, to provide an easy action for users having autorun turned off.
Added plus is the cross-platform feature, so your disks would even be usable the very same way for Linux users. See the project page for more details, including some screenshots.
One little drawback: Development of this app seems to have stopped. I'm not sure whether that's temporarily or completely. If that bothers you, try above "Google-Fu" link for alternatives.