あらゆる種類のステータス更新と時間をコンソールに書き込むアプリケーションがあります。また、クライアントにメールを送信するメール機能もあります。アプリケーションの最後に、コンソールからのすべての行を含む電子メールを送信してください (同じアプリケーション)。
Console.ReadAllLines という関数はないようです。
GetStdHandle でいくつかのアイデアを見ましたが、動作させることができました。
c# pls でこれを行う方法はありますか?
あらゆる種類のステータス更新と時間をコンソールに書き込むアプリケーションがあります。また、クライアントにメールを送信するメール機能もあります。アプリケーションの最後に、コンソールからのすべての行を含む電子メールを送信してください (同じアプリケーション)。
Console.ReadAllLines という関数はないようです。
GetStdHandle でいくつかのアイデアを見ましたが、動作させることができました。
c# pls でこれを行う方法はありますか?
すでにコンソールに出力されている情報を読み戻すことは、逆の設計です。代わりに、情報を DB/ファイル/メモリに保存して、再利用できるようにします。引き続き出力を表示します。ただし、電子メールを送信する必要がある場合は、DB/ファイル/メモリから情報を掘り出します。
次のように実行できます。
List<string> outputList = new List<string>();
string output = GetOutput();//Run continuously...perhaps in a loop or event trigger..whatever applies
outputList.Add(output);
Console.Writeline(output);
//when ready
SendEmail(outputList);
ラッパー クラスを作成して、簡単に処理できます。
public class ConsoleWriter()
{
public static List<string> AllLines = new List<string>();
public static WriteConsole(string text)
{
AllLines.Add(text);
Console.Write(text);
}
}
次に、メールを送信するときに AllLines を読みます。