試しにやってみましたが、どうも理想的な状態にはなりませんでした。
dwStateにNIS_HIDDENを指定するとタスクトレイアイコンが表示されなくなると同時に
バルーンも表示されなくなりますし、
「タスクトレイアイコン表示後即座に消す」という方法だと
「アイコンは表示されずにバルーンだけが表示される」という状態には一応なるものの、
バルーンを手動で閉じないといけなかったり、Microsoft云々と表示されてしまったりで、
あまり良い状態にはなりませんでした。
//参考:http://chokuto.ifdef.jp/urawaza/struct/NOTIFYICONDATA.html
//http://chokuto.ifdef.jp/urawaza/api/Shell_NotifyIcon.html
#include "shell32.as"
#include "user32.as"
onexit *exit
ExtractIcon hinstance,"test.ico",0 //ここではアイコンのファイル名をtest.icoとする
h_icon=stat //アイコンのハンドル
dim nid,126
nid(0)=504,hwnd,0,0x1A,0,h_icon // NIF_ICON | NIF_STATE | NIF_INFO = 0x1A
nid(38)=0,0 //dwStateとdwStateMask。これを1,1にするとアイコンは隠れるが、バルーンも出てこなくなる。
nid(104)=20000 //uTimeout
nid(121)=0x4 //dwInfoFlags。NIIF_USER=0x4
szInfo="本文"
szInfoTitle="タイトル"
memcpy nid,szInfo,limit(strlen(szInfo),0,255),160,0
memcpy nid,szInfoTitle,limit(strlen(szInfoTitle),0,63),420,0
Shell_NotifyIcon 0x0,varptr(nid)
//Shell_NotifyIcon 0x2,varptr(nid) //←これを実行すれば「アイコン無しでバルーンだけ表示される」状態になるが、
//バルーンは手動で閉じないといけないし、バルーンの下に「Microsoft云々」と表示されてしまう。
stop
*exit
Shell_NotifyIcon 0x2,varptr(nid)
DestroyIcon h_icon
end