|
I'm trying to use an unnamed pipe with Microsoft's File Checksum
Integrity Verifier utility and running into a problem I can't figure
out.
I execute the following code to establish the pipe:
data _null_;
string = '"O:\Utility Library\File Checksum Integrity Verifier
\fciv.exe"' || ' ' ||
'"O:\Utility Library\File Checksum Integrity Verifier
\readme.txt"';
rc = filename('indd', string, 'pipe');
put rc=;
run;
That works OK - the log tells me that rc = 0, and I can see the file
definition looks correct in the filename window. I can use the
VIEWTABLE command to open SASHELP.VEXTFL, and I see the filename there
as well.
From viewtable, if I highlight the Path Name and copy it with Control-
C, then open a DOS window and paste the path into it, the command
executes correctly - the DOS window shows:
C:\>"O:\Utility Library\File Checksum Integrity Verifier\fciv.exe" "O:
\Utility L
ibrary\File Checksum Integrity Verifier\readme.txt"
//
// File Checksum Integrity Verifier version 2.05.
//
79ac8d043dc8739f661c45cc33fc07ac o:\utility library\file checksum
integrity veri
fier\readme.txt
C:\>
So far, so good - 79ac8d... is the checksum for the readme.txt file.
But when I try to use the pipe in the following code:
data _null_;
infile indd;
input @1 allofit $255.;
put allofit=;
run;
The log shows the following error message insead of the checksum I'm
after:
NOTE: The infile INDD is:
Unnamed Pipe Access Device,
PROCESS="O:\Utility Library\File Checksum Integrity Verifier
\fciv.exe" "O:\Utility Library\File Checksum Integrity
Verifier\readme.txt",
RECFM=V,LRECL=256
Stderr output:
'O:\Utility' is not recognized as an internal or external command,
operable program or batch file.
Obviously, the spaces in the path are causing a problem. Further
experimentation shows that the problem is the spaces in the path to
fciv.exe - if I move the executable to a location where there aren't
any spaces in the path, everything works fine, even if there are
spaces in the path to the readme.txt file.
Problem is, I can't reorganize the company's directory structure to
accomodate this one utility. Anyone have any idea how to make this
work?
If you're interested, the utility is freely downloadabe at
http://support.microsoft.com/kb/841290
Thanks for your help.
Lou
|