static void ShowNotification(string text, string title)
{
var container = new Container();
var wait = new ManualResetEvent(false);
var trayicon = new NotifyIcon(container);
EventHandler done = null;
done = delegate {
wait.Set();
trayicon.BalloonTipClosed -= done;
trayicon.BalloonTipClicked -= done;
};
trayicon.BalloonTipClicked += done;
trayicon.BalloonTipClosed += done;
trayicon.BalloonTipTitle = title;
trayicon.BalloonTipText = text;
var exe = Environment.GetFolderPath(
Environment.SpecialFolder.ProgramFilesX86) +
@"\iTunes\iTunes.exe";
var icon = Icon.ExtractAssociatedIcon(exe);
trayicon.Icon = new Icon(icon, 16, 16);
trayicon.Visible = true;
trayicon.ShowBalloonTip(5000);
wait.WaitOne(10000);
trayicon.Visible = false;
trayicon.Dispose();
icon.Dispose();
container.Dispose();
}