in reply to Error when script is on new IIs server from %FORM=$q-Vars

Not all CGI's are not created equal, behold:
#!/usr/bin/perl -w use strict; use CGI; print "Version: $CGI::VERSION\n", "Revision: $CGI::revision\n";
I suggest you crack open CGI.pm and check to see if Vars is in there, it'd be listed under %EXPORTED_TAGS as':cgi-lib' => [qw/ReadParse PrintHeader HtmlTop HtmlBot SplitParam Vars/], and it would look something like (from 2.752)
# These are some tie() interfaces for compatibility # with Steve Brenner's cgi-lib.pl routines 'Vars' => <<'END_OF_FUNC', sub Vars { my $q = shift; my %in; tie(%in,CGI,$q); return %in if wantarray; return \%in; } END_OF_FUNC
ar0n says you don't really need it, and that you can use my %form = map { $_ => $q->param($_) } @labels; to replicate the functionality, but be aware that Vars is significantly faster than the map method. in my benchmarks, Vars was at least %20 percent more efficient (it was significantly more, but I don't recall the exact number, i'll update in a minute).

 
___crazyinsomniac_______________________________________
Disclaimer: Don't blame. It came from inside the void

perl -e "$q=$_;map({chr unpack qq;H*;,$_}split(q;;,q*H*));print;$q/$q;"