1

マシンをリモートで再起動する方法を知っているので、それは簡単な部分です。ただし、問題の複雑さは、次のように設定しようとしています。ユーザーがログオフして帰宅したり、コンピューターをシャットダウンしたりしたときに、PythonまたはPythonとWindowsの組み合わせによってマシンを再起動し(クリーンにするため)、自動的にログインできるように、ネットワーク上のマシンを営業時間外に制御したいと思います。 、夜間にプロセスを実行し、次に朝に、そのプロセスを停止してマシンを再起動し、ユーザーが通常のように簡単にログインできるようにします。

レジストリを変更することでそれができるように見えますが、私は周りを見回しましたが、それほど幸運はありませんでした。ただし、これは大まかな考えのように聞こえますが、レジストリを1日ごとに変更します。もっと簡単な方法はありますか?

4

3 に答える 3

3

デスクトップが絶対に必要な場合を除いて、 Windowsサービスとして検討しているプログラムの実行を検討することをお勧めします。これに関していくつか質問があります。たとえば、ここここ、およびアクティブ状態のレシピです。これには、コンピューターを起動したりログインしたりする必要はありません。

スケジュールされたタスクとそうでないもののオプションも常にあります。これは、実際には、このブログ投稿のように、Pythonを介してプログラムで実行できます。

電源をオフにしたコンピューターの電源をオンにすることに関しては、何もしていませんが、WindowsがWake-on-LAN機能をサポートしていることは知っています。また、 ActiveStateのレシピなど、いくつかの優れたリソースがあるようです。

プログラムを実行するためにデスクトップが必要な場合は、レジストリをいじって自動ログインを許可する以外に選択肢はないと思います。WindowのGINAは、どのような形や形式でもスクリプト化できるとは思わないからです。

于 2010-06-18T00:34:52.693 に答える
1

レジストリ以外に、あなたがやりたいことを厳密に行う方法は考えられません。少なくとも、さらに抜本的な対策が必要です。しかし、このレジストリの変更を行うことは大したことではありません。自動ログオンのユーザー名/パスワードを変更して、コンピューターを再起動するだけです。ユーザーがログオフしたときにコンピューターを再起動するには、ログオフするのではなく実際に再起動する「ログオフ」オプションをユーザーに与えます。私は他の場所がそれをしているのを見ました。

(編集)参考:レジストリ編集の場合、WindowsにはREGコマンドがあり、そのルートを使用する場合に役立ちます。(/ edit)

また、どのようなプロセスを実行しようとしていますか?対話が必要なGUIアプリでない場合は、大きな苦労をする必要はありません。アプリをリモートで実行するだけです。私の仕事では、psexecを使用して非常に簡単に実行し、コードをリモートで実行するC++プログラムも作成しました。それほど難しいことではありません。C++でWinAPI関数を呼び出して、リモートPCにサービスをリモートで登録して開始すると、サービスは必要な処理を実行します(それ自体、または他のものを起動するためのステージングポイントとして) )、次に自分自身の登録を解除します。私は単純なWebページ用にPythonを使用しただけなので、必要なDLLにアクセスするためにPythonがどのようなサポートを提供しているかはわかりませんが、それが可能な場合は、ここでPythonを使用できます。

または、さらに良いことに、これをリモートで実行する必要はなく、毎晩実行したい場合は、Windowsスケジューラを使用して、夜間に実行したいアプリケーションを実行できます。そのためのWindowsコマンドがいくつかあるので、プログラムでこれを行うこともできます。1つは「at」コマンドです。もう1つは今は思い出せませんが、少しグーグルで見つけることができます。

于 2010-06-18T00:24:21.237 に答える
0

回答ありがとうございます。私が何をしているのかをより明確にするために、起動時に自動的に起動するプログラムがあるので、ログインすることをお勧めします。私は、作業用のレンダーファームのマネージャーをコーディングしています。このマネージャーは、日中に使用するすべてのマシンを取得し、夜間(または、一定期間ログオフするたびに)にレンダリングサーバーに変換します。

必ずしもGUIアプリが必要かどうかはわかりませんが、レンダリングを実行するサーバーアプリケーションを起動するには、コンピューターを起動してログインする必要があります。ログインせずにそれを実行できるかどうかはわかりません。実行する必要があるのは、AutodeskのBackburnerServer.exeです。

特にログインしなくても実行できるかもしれませんが、私はそのようなことをすることに慣れていません。

于 2010-06-19T15:55:07.367 に答える