質問: WindowsでGNU Screenの特にデタッチ操作を行いたいです。 良いテクニックやツールなどはご存知ありませんか? 希望としては極力標準機能のみで行いたいのですがMustではありません。 -追記- プロセスはバックグランドで残したままウィンドウを閉じたいです。 cmd.exeを想定していますが、必要とあらばPowershellやVBScriptなど標準ツールを駆使して実現出来ればと思います。
回答: WindowStyleがHiddenの状態でpowershellとは別プロセスとして何らかのプロセスを起動したいだけであれば、Start-Processで良いと思います。 powershellコンソール内で実行するとpowershellを閉じれば終了しますが、Start-Processは別プロセスとして実行されるため、コンソールを閉じても実行させ続けることができます。 ただし、Start-Processではstdout・stderrの受け取りが困難なため、その辺りを解決するには"Invoke-Process"辺りで調べると良いでしょう。 既に実行しているプロセスのウィンドウを取得する場合はShowWindowAsyncを使用すれば出来そうです。 起動時に指定するのが楽ですね。 コンソールウィンドウ等に文字列を送る必要があれば、PostMessage等で可能です。 killではなく正常終了させたい時などに。 これらを合わせればWindowsであってもLinux screenと同様に操作できると思います(screenは偉大ですね...)。 かなり端折っていると思うので、ご不明な点があれば質問下さい。