一个WinForm程序,用ADXO.Catalog创建数据库后,只要这个WinForm不关闭,其数据库的锁定文件laccdb就一直存在,一旦这个WinForm关闭,也即整个程序结束,其laccdb文件就自动被删除。
代码如下:
ADOX.Catalog cat = new ADOX.Catalog();
cat.Create(…);
cat = null;
本人想要的是,创建过程结束后,生成accdb文件,laccdb文件自动消失,从而可以进行其他数据库操作。
代码如下:
ADOX.Catalog cat = new ADOX.Catalog();
cat.Create(…);
cat = null;
本人想要的是,创建过程结束后,生成accdb文件,laccdb文件自动消失,从而可以进行其他数据库操作。
解决方案
100
释放com资源
var connection = cat.ActiveConnection;
connection.Close();
System.Runtime.InteropServices.Marshal.ReleaseComObject(connection);
System.Runtime.InteropServices.Marshal.ReleaseComObject(cat);
GC.Collect();
cat.ActiveConnection = null;
cat = null;
var connection = cat.ActiveConnection;
connection.Close();
System.Runtime.InteropServices.Marshal.ReleaseComObject(connection);
System.Runtime.InteropServices.Marshal.ReleaseComObject(cat);
GC.Collect();
cat.ActiveConnection = null;
cat = null;
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/