- ベストアンサー
WindowsNT/2000のATコマンドでバッチファイルを起動する際の環境変数について
- WindowsNT/2000でATコマンドを使用してバッチファイルを起動する際に、コマンドラインから直接起動する場合とATコマンドで起動する場合で環境変数のパスが異なってしまう問題が発生しています。
- ATコマンドで起動した場合のユーザーはDefault Userであり、通常のコマンドラインから起動した場合のユーザーはAdministratorです。
- ATコマンドで起動した場合もコマンドラインから起動した場合と同じ状態にする方法を知りたいという質問です。また、タスクを使用すればユーザーを指定できるため問題なく動作することができます。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
質問の書き方から、察するに背景はこういう事かと推察します。 何やら時間起動させたいバッチファイルがある。 動かしたい環境としては、WindowsNTと2000の環境があるが、2000の方はタスクスケジューラを使うと問題なく動くものの、NTにはAT(スケジューラサービス)しか無いので、何とかNT側でも同じように動くようにしたい。 この前提だと仮定して、回答を書いてみたいと思います。 回答1 ・NTにタスクスケジューラを入れてしまう。 手順はかなり面倒くさいものの、実はNTにタスクスケジューラを入れることはできます。問題は、NT用のIE4が手に入るかどうかですね。 やり方は、以下の質問の私の回答を参考にしてください。 http://okweb.jp/kotaeru.php3?q=228776 http://okweb.jp/kotaeru.php3?q=349168 とりあえず、これができれば2000とほぼ同じタスクスケジューラ機能が使えるようになり、指定したユーザ権限で起動できるようになります。 ATコマンドは使わなくて済むわけです。 回答2 そうはいっても、そんなもの手に入らない場合。 スケジューラサービス自体のユーザ権限を変更することで、対応可能になる場合があります。 コントロールパネル>サービスを開くとNTサービスがずらっと並びますが、そのなかにScheduleというサービスがあるはずです。 既定のままでは、システムアカウントで稼働するようになっていますが、これを明示的にadministratorに設定してやれば、その権限で動くようになります。 問題点としては、タスクスケジューラでユーザを指定した場合と違って、すべてのATコマンドがこの権限で実行されるようになると言う事です。 以上 参考になれば・・・
その他の回答 (3)
- nyan5504
- ベストアンサー率42% (6/14)
at で runas するようにすればいいと思います。
- apple-man
- ベストアンサー率31% (923/2913)
Administratorでログオンしてるときなら、 /interactive としておいてはどうでしょうか? (追伸) No.1の方へ >「ATコマンド」とは、モデムという電話回線用通信装置に対するものです。 ATコマンドをご存知ということは、かなり パソコン暦が長い方と思いますが、ご質問者 の方の言われているのは、NTや2000の 持っている自動化のコマンドのことです。 win2000、XPをお使いなら、コマンドプロンプトで at ? としてやると説明が出てきますよ。 ご参考まで。
お礼
K-1さん、apple-manさん、漠然とした質問への回答、大変ありがとうございました。 『/interactive』ですが、なにやら制限があるようで だめだったようです。 今、もっと詳しい状況を聞いています。 もし詳細が判ったら再度載せますので、その際には またよろしくお願いいたします(^^;
- K-1
- ベストアンサー率21% (832/3844)
うーーーーん、何言ってるのかさっぱりですが、気合入れて考えて見ますと・・・ 「ATコマンド」とは、モデムという電話回線用通信装置に対するものです。 文章から見て、これの意味で言っているのではなさそうです。 「AUTOEXEC.BAT」のことかもしれません。 これで設定している環境変数の値ををDOSプロンプトでも使いたいということかな。 「スタートメニュ」「設定」「コントロールパネル」「システム」タブ「環境変数」で、DOSプロンプトの環境変数を指定できます。 ここで設定してみてはどうでしょう。
お礼
遅ればせながら・・・。皆様、アドバイスありがとうございました。お蔭様で頂いたアドバイスを参考になんとかなっているようです。 ありがとうございました。