Просто небольшой совет: вашему низкоуровневому классу, вероятно, не следует использовать сами окна сообщений, но следует разрешить промежуточный (ближе к интерфейсу) класс для обработки случаев, когда вам может понадобиться ящик сообщений.
Если бы вы сделали это, то просто использовали бы другие классы более высокого уровня для Интернета, чем для рабочего стола, и у каждого были бы средства уведомления, соответствующие его контексту.