みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

SQL Server 2008のジョブで次のコマンドを実行したら、いつ

SQL Server 2008のジョブで次のコマンドを実行したら、いつまでも終了しません。
"C:\Program Files\Microsoft Office\Office12\Office12\MSACCESS.exe" "D:\XXX\PM.accdb" /x M_Create

現状としては、
1、タスクマネジャーを確認したら、Accessがちゃんと立ち上がりました。また、PM.accdbと同じフォルダにPM.laccdbというファイルも生成されました。
2、ジョブの履歴を見たら、実行ユーザーはジョブの持ち主ではなく、「サーバー名\SYSTEM」というものです。これはSQLServerエージェントサービスアカウントのことですね。
3、上記コマンドをコマンドプロンプトで実行すると、無事終了しました。
4、関連ファイルやフォルダにはEveryOneにフル権限を与えています。

全般的に見ると、実行ユーザーのせいではないかと思いますが、同じようなことを経験した方がいらっしゃいますか。
何の情報でもいいですから、ぜひ教えてください。
よろしくお願いいたします。

投稿日時 - 2010-01-27 18:12:40

QNo.5627789

すぐに回答ほしいです

質問者が選んだベストアンサー

システムアカウントというのは特殊なアカウントでログインした画面を見ることはできませんから、推測になりますが、
・実行中に何かメッセージが出た
・マクロが有効にならず走らなかった
などの理由で止まっているのでしょう。

タスク実行はUIに対応していませんので、ACCESSを開いたとしても自動的に終了しなかった場合は画面が見られない以上どうしようもなくなります。

以前、エージェントの実行アカウントを実際のローカルアカウントに変更し、起動後何のメッセージも出さずに処理し、自動的にExcelを終了するExcelファイルを作って試したところ処理は実行できました。
しかし、「どんな場合でも止まらない処理」を書くのは不可能に近いですから、止まってしまったら強制終了するしかなくなるようなアプローチは危険であることには変わりはないです。

投稿日時 - 2010-01-27 23:02:42

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問