4

c#では、Environment.Exit(n)を使用して、基になる呼び出し元に整数を返すことができます(たとえば、DOSスクリプトのERRORLEVEL変数を使用してテストできます)。

それらのコードに関するベストプラクティスはありますか?

0 =エラーなしと思います...しかし、予約されている番号はありますか?負の数を使用できますか?等

ありがとう!

4

2 に答える 2

6

ゼロは通常、エラーがなかったことを意味します。その他については、予約セットはないと思います。通常、アプリケーションのさまざまなリターン コードの意味を定義し、それらを文書化します。

DOS は最大 256 のリターン コードしか処理できませんが、実際には、それほど多くのコードを使用/必要とすることはないと思います。

負の値を使用できますが、負の値が必ずしも正の値と異なるというわけではないことに注意してください。

于 2009-10-21T21:07:53.057 に答える
3

私が見たリターン コードの最も広範な用途は、Robocopy です。他のアプリのガイダンスを提供する場合があります。Robocopy はリターン コードをフラグとして使用します。

0×10 重大なエラー。Robocopy はファイルをコピーしませんでした。これは、使用上のエラーか、ソース ディレクトリまたは宛先ディレクトリに対するアクセス権限が不十分であることが原因のエラーです。

0×08 一部のファイルまたはディレクトリをコピーできませんでした (コピー エラーが発生し、リトライ制限を超えました)。これらのエラーをさらに確認してください。

0×04 不一致のファイルまたはディレクトリが検出されました。出力ログを調べます。ハウスキーピングはおそらく必要です。

0×02 いくつかの余分なファイルまたはディレクトリが検出されました。出力ログを調べます。ハウスキーピングが必要な場合があります。

0×01 1 つ以上のファイルが正常にコピーされました (つまり、新しいファイルが到着しました)。

0×00 エラーは発生せず、コピーも行われませんでした。ソースと宛先のディレクトリ ツリーは完全に同期されます。

于 2009-10-21T22:27:54.983 に答える