ActiveX控件文件副本不释放句柄

时间:2012-05-15 22:34:57

标签: c# .net activex file-handling

我有一个执行文件复制的activex控件。我尝试了File.Copy以及使用FileStream进行读写。在关闭Internet Explorer浏览器之前,这两个选项都不会释放句柄。我希望用户能够在复制文件后删除文件。我不希望他们被要求关闭浏览器。为什么这些选项不会释放句柄。

            string filename = GetFilename(sourceFilePath);
            byte[] buf;
            // read
            using (var fs = new FileStream(sourceFilePath, FileMode.Open))
            {
                buf = new byte[fs.Length];
                fs.Read(buf, 0, buf.Length);
                fs.Close();
            }

            //write
            using (var fs = new FileStream(contentItemDir + "\\" + filename, FileMode.CreateNew))
            {
                fs.Write(buf, 0, buf.Length);
                fs.Close();
            }

我正在使用Process Explorer确认没有释放句柄,并且Internet Explorer拥有句柄。

0 个答案:

没有答案