对于这种行为的一个潜在的解释是LabVIEW将每个.NET程序集加载到其自己的应用程序域中。
因此,为了真正在LabVIEW之外测试您的.NET程序集并仔细模拟LabVIEW处理程序集的方式,您还应该将程序集加载到自己的应用程序域。
C#中的以下代码段描述了在名为ApplicationName的应用程序的单独应用程序域中调用名为MyAssembly的程序集的过程:

如果您的程序集在AppDomain.Unload(appDomain)
调用中崩溃,那么可能表示您的程序集没有正确处理资源。运行时错误的一个例子如下:

一般来说,程序集的Dispose()方法应该处理所有非托管资源的清理。在LabVIEW之外又得到此错误足以确定进一步的故障排除应集中在程序集本身上,并且LabVIEW崩溃并非意外报错。
有关正确编写程序集Dispose方法的更多信息已超出了本文档的范围,但下面链接的资源可能会对您有用。