www.grootersnet.nl |
WASD Gotcha'sWe found just one ;) One thing to keep in mind when putting your files (CGI-scripts, most particular) on an ODS-5 Disk: WASD will explicitly do a $ SET PROCESS/PARSE_STYPE=EXTENDED to allow all features to be used. This is a requirement if you use Unix-based code (PHP, Perl and Java) but may cause some unexpected problems, as we found out in running a native program reading the rest of the commandline for the parameters using LIB$GET_FOREIGN, and expecting them to be in uppercase: if the parameters are specified in lowercase, LIB$GET_FOREIGN will pass the as-is: in lowercase! $ mcr $exe:prgrm -a -b data -c WIthin prgrm, VMS routine LIB$GET_FOREIGN is used to get the remainder of the commandline, and it will check for the occurrence of any of the charactes-combinations -A, -B an d -C in that string. If parse-style is set to Extended, LIB$GET_FOREIGN will return the remainder as: " -a -b data -c" and the requested combinations will NOT be found, since "-A" , "-B" and "-C" do not occur here. If parse-style is set to TRADITIONAL, LIB$GET_FOREIGN will return the remainder as " -A -B DATA -C" and all requested combinations will be found. Solution: specify the parameters in UPPERCASE, or do a $ SET PROCESS/PARSE_STYLE=TRADITIONAL in the DCL script before executing the VMS image: $ set process/parse_style=traditional (This is NOT an issue of WASD because the application has the same trouble in normal use as well.. It's an undocumented (?) feature of VMS) |
(c) 2003- 2006 W. Grooters Last updated 16-11-2006 |