[Ttssh2-commit] [8173] ツールチップ表示において、RegisterClass()が失敗した場合は、CreateWindowEx()が

Back to archive index
scmno****@osdn***** scmno****@osdn*****
2019年 9月 16日 (月) 20:14:02 JST


Revision: 8173
          https://osdn.net/projects/ttssh2/scm/svn/commits/8173
Author:   yutakapon
Date:     2019-09-16 20:14:02 +0900 (Mon, 16 Sep 2019)
Log Message:
-----------
ツールチップ表示において、RegisterClass()が失敗した場合は、CreateWindowEx()が
87(ERROR_INVALID_PARAMETER)でエラーとなるため、CreateWindowEx()を呼び出さないようにする。

Windows9x(95/98/Me)では、
 ・SSH認証ダイアログで RegisterClass() が失敗し、ツールチップが表示されない。
 ・Tera Termのリサイズ時、RegisterClassとCreateWindowExは成功するが、ツールチップが表示されない。
 ・Additional settingsのVisualタブのWindow Opacityでは、ツールチップが表示される。
 ・serial_port_improved ブランチでのシリアルポート設定ダイアログでは、ツールチップが表示される。

Modified Paths:
--------------
    trunk/teraterm/common/tipwin.cpp

-------------- next part --------------
Modified: trunk/teraterm/common/tipwin.cpp
===================================================================
--- trunk/teraterm/common/tipwin.cpp	2019-09-16 06:49:00 UTC (rev 8172)
+++ trunk/teraterm/common/tipwin.cpp	2019-09-16 11:14:02 UTC (rev 8173)
@@ -264,19 +264,24 @@
 
 	const int str_width = tWin->str_rect.right - tWin->str_rect.left;
 	const int str_height = tWin->str_rect.bottom - tWin->str_rect.top;
-	tWin->tip_wnd =
-		CreateWindowEx(WS_EX_TOOLWINDOW | WS_EX_TOPMOST,
-					   MAKEINTRESOURCE(tip_class),
-					   str, WS_POPUP,
-					   cx, cy,
-					   str_width + FRAME_WIDTH * 2, str_height + FRAME_WIDTH * 2,
-					   src, NULL, hInst, this);
 
 	/*
-	 * WindowsMe(9x)\x82ł́ASSH\x94F\x8F؂̃_\x83C\x83A\x83\x8D\x83O\x82̕\\x8E\xA6\x82ł\xCD NULL \x82\xAA\x95Ԃ\xC1\x82Ă\xAD\x82邽\x82߁A
-	 * \x83A\x83T\x81[\x83V\x83\x87\x83\x93\x82\xF0\x82\xB5\x82Ȃ\xA2\x82悤\x82ɂ\xB5\x82\xBD\x81BTera Term\x82̃\x8A\x83T\x83C\x83Y\x82ł\xCD NULL \x82ł͂Ȃ\xA2\x82\xAA\x81A
-	 * \x83c\x81[\x83\x8B\x83`\x83b\x83v\x82\xAA\x95`\x89悳\x82\xEA\x82Ȃ\xA2\x81B
+	 * RegisterClass()\x82\xAA\x8E\xB8\x94s\x82\xB5\x82\xBD\x8Fꍇ\x82́ACreateWindowEx()\x82\xAA 87 (ERROR_INVALID_PARAMETER)\x82\xC5
+	 * \x83G\x83\x89\x81[\x82ƂȂ邽\x82߁A\x8CĂяo\x82\xB3\x82Ȃ\xA2\x82悤\x82ɂ\xB7\x82\xE9\x81B
+	 *
+	 * WindowsMe(9x)\x82ł́ASSH\x94F\x8F؃_\x83C\x83A\x83\x8D\x83O\x82̃c\x81[\x83\x8B\x83`\x83b\x83v\x95\\x8E\xA6\x82\xC5 RegisterClass() \x82\xAA
+	 * \x8E\xB8\x94s\x82\xB7\x82\xE9\x81B\x8C\xB4\x88\xF6\x95s\x96\xBE\x81B
 	 */
+	tWin->tip_wnd = NULL;
+	if (tip_class) {
+		tWin->tip_wnd =
+			CreateWindowEx(WS_EX_TOOLWINDOW | WS_EX_TOPMOST,
+						   MAKEINTRESOURCE(tip_class),
+						   str, WS_POPUP,
+						   cx, cy,
+						   str_width + FRAME_WIDTH * 2, str_height + FRAME_WIDTH * 2,
+						   src, NULL, hInst, this);
+	}
 
 	tWin->hParentWnd = src;
 	tWin->auto_destroy = TRUE;


Ttssh2-commit メーリングリストの案内
Back to archive index