gpt4 book ai didi

c# - 如何捕获 Visual Studio 中库的缺失?

转载 作者:太空宇宙 更新时间:2023-11-03 23:30:12 25 4
gpt4 key购买 nike

我开发了一个在某些项目中使用的自定义库。

现在我正在我的应用程序中实现错误捕获。其中之一考虑了我尝试执行我的应用程序的机器没有我的库的可能性。

所以我检查库是否安装的方法是尝试使用它,并用 try-catch 子句包围起来,如下所示:

try
{
MyLibrary library = new MyLibrary();
}
catch (Exception e)
{
MessageBox.Show("Your library is not installed");
Close();
}

此代码应在未找到库时显示一条消息,然后关闭我的应用程序。但该消息从未显示。

关于如何检查我的库是否不在我的机器中的任何想法?

最佳答案

使用您当前的try-catch,您无法捕捉到那种异常,因为它们与您的代码无关。运行时将尝试加载程序集,如果找不到,将引发 AssemblyResolve 事件。

class Test
{
public static void Main()
{
AppDomain currentDomain = AppDomain.CurrentDomain;
currentDomain.AssemblyResolve += MyResolveEventHandler;

}


private static Assembly MyResolveEventHandler(object sender, ResolveEventArgs args)
{
Console.WriteLine("Try resolving: " + args.Name);
return null;
}
}

关于c# - 如何捕获 Visual Studio 中库的缺失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32561536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com