2016-06-23 73 views
0

xp_cmdshellを成功させようとしています。実行するexeファイルはc:\program files (x86)\internet download manager\xp_cmdshell - システムが指定されたパスを見つけることができません

であると私は、次のエラーメッセージが出ます:

EXEC xp_cmdshell 'MPR01\\program files (x86)\internet download manager\idman /n 

システムはパスがコマンドラインがある

指定見つけることができませんが

MPR01はサーバーの名前です。私もサーバの名前なしで試してみました。違いはありません。

答えて

0

まず、これを使用するためには、

---- To allow advanced options to be changed. 
EXEC sp_configure 'show advanced options', 1; 
GO 
-- To update the currently configured value for advanced options. 
RECONFIGURE; 
GO 
-- To enable the feature. 
EXEC sp_configure 'xp_cmdshell', 1; 
GO 
-- To update the currently configured value for this feature. 
RECONFIGURE; 
GO 

は、その後、あなたの実際のコマンドを実行し、シェルコマンドを実行するためのアクセス権を取得するためにSQL Serverを構成する必要があります。

xp_cmdshell '%windir%\system32\<Your .EXE>'; 

特別な権限が必要な場合は、適切な権限が必要です。

EXECUTE AS LOGIN = '<other_login>' ; 
GO 
xp_cmdshell '%windir%\system32\<Your .EXE>'; 
REVERT ; 
+0

ありがとうございます。私はあなたの手順を踏んだが、同じエラーメッセージが表示されます。 私は試しました: xp_cmdshell 'windir%\ program files(x86)\インターネットダウンロードマネージャ\ idman.exe/n' xp_cmdshell 'windir%\ system32 \ program files(x86)\インターネットダウンロードマネージャ\ idman.exe/n ' – Sue

+0

コマンドプロンプトから同じものを実行してみてください。構文エラーがない場合は、それをSSMSで実行させるためにさらにチューニングしてください。 – Lucky

+0

こんにちは、コマンドプロンプトから、私がディレクトリにいる限り、 c:\ program files(x86)\ internetダウンロードマネージャー\ それ以外の場合は、同じエラーメッセージが再び表示されます – Sue

0
EXEC xp_cmdshell '"\\MPR01\C$\program files (x86)\internet download manager\idman" /n'; 

サーバー名は、先頭に二重のバックスラッシュを持っている、以下のコンテキストを使用します。 C $はシステム共有です。 パスにスペースが含まれているため、二重引用符を追加しました。

関連する問題