Migrating scripts from IIS 3 to IIS 4

We recently upgraded from IIS 3 to IIS 4. We are using ActivePerl. We
had a simple SSI ad-rotating banner using perl, and it worked fine under
IIS 3. However, now we are getting the following error with IIS 4:

Can't open perl script "?????????????????????i???รบ??": Invalid argument

I've checked all of the directory permissions, and they all seem right.
In fact, if I use "include virtual" instead of "exec cgi", the script
will be included in the HTML, so IIS is indeed finding and reading the

.cgi and .pl are both registered and mapped to the right files.

The only thing I can imagine is that IIS was installed with "exec"
disabled for security reasons. Unfortunately, the help files are wrong
and give bad information about how to enable and disable this feature.
It talks about the "metabase", which has been separated from the
registry, but it doen't tell you how to open the metabase for editing.

Am I going in the wrong direction? If not, how do I check to see if
"exec" is enabled/disabled. If I am going in the wrong direction, where
do I go from here?


Who is Participating?
sybeConnect With a Mentor Commented:
in MMC:
rightclicke on the webname and choose properties
then select resp:
  home directory
  app mappings

You find your extensions listed there.

executable path: C:\PERL\BIN\PERL.EXE %s %s

The "%s %s"  MUST be in undercase, IIS4 puts it in uppercase.

joemacdAuthor Commented:
That was it. So simple, and yet so devious. I noticed that they had been converted to uppercase, but I just didn't think of the possible implications. Thanks.
Well, it took me some effort to find it out, so don't be embarassed, glad I could help you.

If you have problems with perlscripts writing to a file, I just asked the question and got it answered.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.