我在我的 .NET 应用程序中使用 MSMQ。如果 MSMQ 已安装但未运行 - 可以处理。
但是,如果本地计算机上没有安装 MSMQ 功能,如何防止启动时崩溃?
它不漂亮,但我以前使用过它并取得了一些成功:
public static bool IsMsmqInstalled
{
get
{
try
{
IntPtr result = NativeMethods.LoadLibrary("Mqrt.dll");
return (result != IntPtr.Zero);
}
catch (Exception)
{
return false;
}
}
}
public sealed class NativeMethods
{
[DllImport("kernel32", SetLastError = true, CharSet = CharSet.Unicode)]
internal static extern IntPtr LoadLibrary(string lpFileName);
}
这是我的博客: