Когда я вызываю xp_cmdshell, как показано ниже, 7z.exe
фактически выполняется, и его вывод верен, потому что параметры не включены:
declare @Command VARCHAR(1000)
set @Command = '"C:\Program Files\7-Zip\7z.exe" a '
exec master..xp_cmdshell @command
select @Command
Вывод:
output
NULL
7-Zip 18.05 (x64) : Copyright (c) 1999-2018 Igor Pavlov : 2018-04-30
NULL
NULL
NULL
Command Line Error:
Cannot find archive name
NULL
Как только я добавлюфайл, я получаю совершенно другую ошибку: 7z.exe
не найден:
declare @Command VARCHAR(1000)
set @Command = '"C:\Program Files\7-Zip\7z.exe" a ' + '"' + 'C:\TO_ERASE\ToZip.txt' + '"'
exec master..xp_cmdshell @command
select @Command
Вывод:
output
'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
NULL
В чем может быть проблема?
Разница лишь в том, что я добавил имя файла в качестве параметра.Я бы понял, если 7z.exe
генерирует ошибки, но Windows не находит файл exe
.