我做了一个应用来检查配额空间检查应用程序,就像这样
DIDiskQuotaUser QuotaInfo = null;
try
{
QuotaInfo = this.gDiskQuotaControl.FindUser(SAMUser);
}
catch
{
QuotaInfo = null;
}
FindUser的定义
[DispId(1610743828)]
public virtual DIDiskQuotaUser FindUser(string LogonName);
来自:
[TypeLibType(2)]
[ComSourceInterfaces("DiskQuotaTypeLibrary.DIDiskQuotaControlEvents")]
[Guid("7988B571-EC89-11CF-9C00-00AA00A14F56")]
[ClassInterface(0)]
public class DiskQuotaControlClass : DIDiskQuotaControl, DiskQuotaControl, DIDiskQuotaControlEvents_Event, IDiskQuotaControlEvents, DIDiskQuotaUser, IEnumerable
问题是循环正在检查服务器上的文件句柄泄漏,我无法看到从FindUser处理te返回的任何方法
答案 0 :(得分:1)
我会尝试在对象上调用Marshal.FinalReleaseComObject。这应该相当于在COM对象上调用Release,直到它的引用计数为零为止,它应该处理该对象并释放它的句柄。