Photo ID viewer under Windows NT

David Shaw dshaw at
Fri May 31 08:53:01 CEST 2002

On Thu, May 30, 2002 at 11:52:37PM -0500, Keith Ray wrote:

> I just tried the new method of calling the Photo ID viewer under
> Windows.  Unfortunately, unlike system(), CreateProcess() does not get
> interpretted through the system shell.  This means that only actual
> executables can be run in CreateProcess(), not internal commands.  In
> Windows 95/98/Me, "start" is actually start.exe.  Under Windows
> NT/2k/XP, "start" is integrated into the shell and CreateProcess() fails
> with "No such file or directory".  
> You can still use CreateProcess() under NT, but you need to call:
> cmd /c start /w %i
> However, since 95 uses instead of cmd.exe, this would fail
> for those versions.

So use the longer form?  I'm not sure what you're getting at
here. "start /w" doesn't work on NT, but neither does qiv or
xloadimage or any other other of the sample viewers.  The whole point
of the photo-viewer option is to set what viewer works for YOU and not
hard-code something in that may not work (or may work but not be what
you wanted: using "start" to read the registry doesn't work very well
if your .jpg viewer is photoshop, for example).

It's possible to use some conditional #defines to change the default
viewer at build time, but to what end?  Most people don't compile
their own win32 binary, and this would make the NT/2k/XP binary
different than 95/98/Me.

Remember: "start /w" is only the default.  If you don't like it (or if
it doesn't work on your system), change it.

If you're arguing that the default should be "cmd /c start /w", then
maybe - but it'll break the default for the 95/98/Me people.  I have
no strong feelings on which platform gets the 'better' default.


   David Shaw  |  dshaw at  |  WWW
   "There are two major products that come out of Berkeley: LSD and UNIX.
      We don't believe this to be a coincidence." - Jeremy S. Anderson

More information about the Gnupg-devel mailing list