回答編集履歴
2
「GUIプログラム」を「コンソール無しプログラム」に書き換え。同じものですが
test
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
「コンソールプログラムであれば、問題なくデバッグできるのに、GUIだとそれが難しい」
|
1
|
+
「コンソールプログラムであれば、問題なくデバッグできるのに、コンソール無し(GUIアプリ)だとそれが難しい」
|
2
2
|
というのが問題ポイントであれば、開発中または障害が起こってのデバッグの際は`--noconsole`を付けずにコンソールプログラムとして作るというのが簡単な方法です。
|
3
3
|
ただし、
|
4
4
|
・本番稼働中に起こった障害が再現せず、本番稼働中にも記録を残しておきたかった
|
5
|
-
・
|
5
|
+
・コンソール無しプログラムだと障害を再現できるが、コンソールプログラムにすると再現しない
|
6
6
|
という場合は駄目ですが。
|
7
7
|
|
8
8
|
また、標準出力、標準エラー出力が失われることが問題であれば、プログラム冒頭で、
|
@@ -17,8 +17,8 @@
|
|
17
17
|
|
18
18
|
> 今回 %errorlevel%が 0で戻ってきている理由だけ明確にすればよい??
|
19
19
|
|
20
|
-
GUIプログラムをコマンドプロンプトやPowershellコンソールで起動しても、すぐにプロンプトが返ってくるので、そこで`ERRORLEVEL`を表示させても今実際に動き続けているプログラムとは無関係に1つ前の値が返ります。
|
20
|
+
GUIプログラム/コンソール無しプログラムをコマンドプロンプトやPowershellコンソールで起動しても、すぐにプロンプトが返ってくるので、そこで`ERRORLEVEL`を表示させても今実際に動き続けているプログラムとは無関係に1つ前の値が返ります。
|
21
|
-
(すべてのGUIプログラムがそうなのかは未確認
|
21
|
+
(すべてのGUIプログラム/コンソール無しプログラムがそうなのかは未確認)
|
22
22
|
コマンドプロンプトでキーインしての実行例:
|
23
23
|
```CMD
|
24
24
|
Z:\TEMP>python -c "import sys;sys.exit(123)"
|
@@ -31,7 +31,7 @@
|
|
31
31
|
Z:\TEMP>
|
32
32
|
```
|
33
33
|
|
34
|
-
下記のようなバッチファイルを作れば30秒後に 0 が表示されますので、
|
34
|
+
下記のようなバッチファイルを作れば30秒後に 0 が表示されますので、コンソール無しプログラムの`ERRORLEVEL`を見たい時はバッチにすると良いでしょう。
|
35
35
|
```CMD
|
36
36
|
python -c "import sys;sys.exit(123)"
|
37
37
|
echo %ERRORLEVEL%
|
1
補足追記
test
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
> 今回 %errorlevel%が 0で戻ってきている理由だけ明確にすればよい??
|
19
19
|
|
20
20
|
GUIプログラムをコマンドプロンプトやPowershellコンソールで起動しても、すぐにプロンプトが返ってくるので、そこで`ERRORLEVEL`を表示させても今実際に動き続けているプログラムとは無関係に1つ前の値が返ります。
|
21
|
-
(すべてのGUIプログラムがそうなのかは未確認)
|
21
|
+
(すべてのGUIプログラムがそうなのかは未確認。pyinstallerでつくったGUIプログラムも未確認)
|
22
22
|
コマンドプロンプトでキーインしての実行例:
|
23
23
|
```CMD
|
24
24
|
Z:\TEMP>python -c "import sys;sys.exit(123)"
|
@@ -31,7 +31,7 @@
|
|
31
31
|
Z:\TEMP>
|
32
32
|
```
|
33
33
|
|
34
|
-
下記のようなバッチファイルを作れば30秒後に 0 が表示されます。
|
34
|
+
下記のようなバッチファイルを作れば30秒後に 0 が表示されますので、GUIプログラムの`ERRORLEVEL`を見たい時はバッチにすると良いでしょう。
|
35
35
|
```CMD
|
36
36
|
python -c "import sys;sys.exit(123)"
|
37
37
|
echo %ERRORLEVEL%
|