在表插入上显示窗口气球通知

时间:2013-11-04 14:55:36

标签: c# sql-server windows

我正在使用C#开发一个Windows应用程序。我想在将新行插入特定表时显示气球通知。该应用程序将安装在许多计算机上,并将通过LAN共享一个公共数据库。目前我正在使用民意调查实现这一目标。那就是应用程序将每秒查询数据库表以检查是否插入了新行。请让我知道这是否是正确的方法还是有更好的方法呢?我知道使用触发器我们可以在SQL服务器中执行查询以进行表插入,但是是否可以从已将新行插入表中的SQL服务器将消息发送回特定应用程序?请帮忙

1 个答案:

答案 0 :(得分:2)

我认为您可以通过结合使用SQL CLR触发器和Win32 API函数来实现此目的。使用CLR触发器有助于避免轮询。

编写CLR触发器时

Here's an MSDN article

显示的示例代码是记录到某个审计表。交换该部分以调用Shell_NotifyIcon Win32 API函数。 Here's a sample from MSDN on using the Shell_NotifyIcon 显示气球通知。

实际示例代码为on this page(搜索notificationicon.zip)并使用C ++编写,但是一旦执行DLL导入并使用PInvoke,您应该能够为C#修改它。有关详情,请参阅this SO thread