Access can only displays images which are stored with an OLE Header.
This header give Access the possibility of displaying any OLE linked or
stored objects and not only gif or jpeg images, for example a Word document
as well, but become a real pain in the back when you have to display theses
images on a web server or in another image manipulation tool. In one way,
the header is missing and Access can display it; in the other way, the
header is there and Access can display it but your other application can't.
There are two solutions. The first one is to store the images under the
Access format and strip the header when you have to use them in another
application. See the other answer for a reference. You can also use a
constant length for stripping the header if you always store the same kind
of images.
The second solution is to use an OCX or an Active-X control for
storing/displaying bare images (without OLE header) inside Access. See for
exemple
http://www.chestysoft.com/ximage/access1.asp but you can find many
others on the web.
By the way, since Access 1.0, this problem is probably the one that
comes out most often. Curious that Microsoft never accepted to give it a
simple solution, like adding a linked control image or a function to add or
strip the ole-header. Somewhere, someone must be really stubborn.
S. L.