Dec
6
和同事在工作中遇到的:
在.net中,有时候需要对Excel文档进行操作,但通常我们并不能真正的正确释放Excel占用的资源。
我们在代码中通常会这样操作Excel
在操作完成后我们通常这样释放:
看起来很正确嘛。OK,请打开资源管理器,发现Excel的进程了吗?再运行几次你的程序,是不是发现Excel的进程越来越多了?相信你现在有点想骂人了吧。
正确的释放资源的方法是:
在.net中,有时候需要对Excel文档进行操作,但通常我们并不能真正的正确释放Excel占用的资源。
我们在代码中通常会这样操作Excel
Dim excelWorkBook As Excel.Workbook
Dim excelWorkSheet As Excel.Worksheet
Dim appExcel As New Excel.Application
Dim excelRange As Excel.Rangge
…………
Dim excelWorkSheet As Excel.Worksheet
Dim appExcel As New Excel.Application
Dim excelRange As Excel.Rangge
…………
在操作完成后我们通常这样释放:
excelWorkBook.Close()
appExcel.Quit()
excelWorkSheet = Nothing
excelWorkBook = Nothing
appExcel = Nothing
……
appExcel.Quit()
excelWorkSheet = Nothing
excelWorkBook = Nothing
appExcel = Nothing
……
看起来很正确嘛。OK,请打开资源管理器,发现Excel的进程了吗?再运行几次你的程序,是不是发现Excel的进程越来越多了?相信你现在有点想骂人了吧。
正确的释放资源的方法是:
Dec
5
Nov
25







,如下:


