Knowledge Base

PRB: XP_CMDSHELL Does Not Work with XCOPY

Article ID: 152134

Article Last Modified on 11/14/2003


APPLIES TO


This article was previously published under Q152134

SYMPTOMS

XP_CMDSHELL does not work with XCOPY. When tried, the XP_CMDSHELL always returns "0 rows affected," and files and directories are not copied. The same XCOPY command works fine from the command prompt.

NOTE: This problem does not occur with Microsoft SQL Server 2000.

CAUSE

Certain commands such as XCOPY sometimes expect input from the user. Because of this, they must be assigned an input handle. Since we do not create the process with an input handle assigned, it fails.

WORKAROUND

To work around this problem you can use the COPY command instead. Or, you can also pipe the output to a NUL console. For example:
xp_cmdshell 'fc c:\test1.txt c:\test.txt <NUL:'
				
-or-
xp_cmdshell 'fc c:\test1.txt c:\test.txt <NUL: >c:\output.txt'
				

Additional query words: extended stored procedure

Keywords: KB152134