.net - COM可调用包装程序和.NET对象生存期

标签 .net com-interop

我有一个从C++ COM客户端调用的C#.NET程序集。当客户端进程显式释放COM对象时,CCW释放其内部引用,从而使.NET对象有资格进行垃圾回收。

如果.NET对象具有打开日志文件的静态构造函数,该怎么办?是否有一种优雅的解决方案来关闭日志文件,而无需客户端的明确请求?

TIA。

最佳答案

使用AppDomain.ProcessExit EventHandler进行一些测试之后,似乎是关闭日志文件的不错选择。

关于.net - COM可调用包装程序和.NET对象生存期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2118111/

相关文章:

.net - 如何获取 .NET CCW 程序集以从 dll.config 加载配置

.net - ZeroMQ PUSH/PULL 和丢失消息

c# - .Net (C#) 检测电视是否已连接

C# Swagger 生成的客户端如何验证和使用自动生成的代码

c# - VB6 变体类型到 .NET 类型

c# - 从 C# 调用具有复杂用户定义类型 (UDT) 的 VB6 DLL 函数

c# - 我们如何检测 COM Interop 应用程序中的内存泄漏?

c# - FileStream.Position 具有线程不安全的副作用

.net - 如何强制从哪里加载程序集?

c# - 如何检查程序集的类型是否为 ComVisible