[ttssh2-dev 456] Re: 開放するべきメモリ

Back to archive index
matsuo zmats****@gmail*****
2022年 6月 19日 (日) 02:27:18 JST


松尾です。

1 クローズ時に隠す

WM_CLOSEを受けたらウィンドウを隠す。
(でもALT+F4だとWM_CLOSEが発生しないかも)
DestroyWindow()を行うと
ウィンドウが消えてから
WM_DESTROYが発生するはずなんだけど・・

--- a/teraterm/keycode/keycode.c
+++ b/teraterm/keycode/keycode.c
@@ -258,6 +258,13 @@ LRESULT CALLBACK MainWndProc(HWND hWnd, UINT msg, 
WPARAM wParam,
  		case WM_DPICHANGED:
  			OnDpiChanged(hWnd, wParam, lParam);
  			break;
+#if 1
+		case WM_CLOSE: {
+			ShowWindow(hWnd, SW_HIDE);
+			DestroyWindow(hWnd);
+			break;
+		}
+#endif
  		default:
  			return (DefWindowProc(hWnd, msg, wParam, lParam));
  	}

2 OnDpiChanged() の TTSetIcon() をコメント

隠す処理より前にアイコンがデフォルトに戻るのは
別のところで TTSetIcon() が発生してる?
ウィンドウが閉じる前にWM_DPICHANGEDを受けるのかもしれない。
閉じるつもりになっているのでアイコンはセットされず
デフォルトになっている?


デフォルトアイコンになるというのは発生しそうな気がします。
 > ttssh2-dev 440 で
 > 書いたように、この部分は開放しないようにするのはどうでしょうか。
解放しない方針で進めましょう。



ttssh2-dev メーリングリストの案内
Back to archive index