ホーム » メモ » タスクトレイのチップが 64 …

2015年9月
 12345
6789101112
13141516171819
20212223242526
27282930  

カテゴリー

アーカイブ

ブログ統計情報

  • 99,434 アクセス


タスクトレイのチップが 64 …

XP 環境で,タスクトレイのチップが 64 文字で切れてしまっている.
VC8.exe は 64 で切られることはないが,VC 9 以降だとうまくない?
Win 7 環境での動作は問題ない.
まだ詳しく調べられてないが,とりあえずメモ.


2015/09/08
どうも _WIN32_WINNT によるみたい.

  Win UNICODE MBCS NOTIFYICONDATA
VC 6 400 152 88 szTip[64]
VC 7 501 936 488 dwInfoFlag
VC 8 502 936 488  
VC 9 600 956 508 hBallonIcon
VC10 601 956 508  
VC11 601 956 508  
VC12 601 956    

  Win は _WIN32_WINNT .
cbSize を NOTYFYICONDATA_V3_SIZE と指定すれば良いのか?
今回は,意図せず 64 文字で切れていたことを避けたかっただけなので,次の様に変更.
   NOTIFYICONDATA nid ; ::ZeroMemory(&nid,sizeof(NOTIFYICONDATA)) ;
   long maxLenTip = countof(nid.szTip)-1 ;
   #if (_MSC_VER >= 1500) // VC 9 ~
     if (::GetWindowsVersion() < 6) {
       maxLenTip = 64-1 ;
       }
   #endif
   if (::GetWindowsVersion() > maxLenTip) {
     …
     }

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

%d人のブロガーが「いいね」をつけました。