遍历ADO,然后Close时间不多,不方便测试。给个大致的方法给你参考一下: '声明一个连接变量,或者一个变体数据类型,以下两选一 Dim varCon as adodb.connection Dim varCon as variant'遍历连接,如果是打开的,则关闭之 for each varcon in adodb.connections if varcon.state=adstateopen then varcon.close next
改一下 if varcon.state<>adstateclosed then varcon.close
不好办。ADO 没有 WorkSpace 这一层对象。
退出应用再打开吧,或者换 DAO。
可以在Form_Unload事件中处理。代码如下: -------------------------------------------------------------------------------- Private sub Form_Unload(Cancel as Integer) On Error Resume Next Dim ws as Workspace Dim db as database Dim rs as recordset For Each ws in Workspaces Form each Db in ws.databases for each rs in db.recordsets rs.close set rs=nothing next db.close set db=nothing next ws.close set ws=nothing next End Sub --------------------------------------------------------------------------------
'声明一个连接变量,或者一个变体数据类型,以下两选一
Dim varCon as adodb.connection
Dim varCon as variant'遍历连接,如果是打开的,则关闭之
for each varcon in adodb.connections
if varcon.state=adstateopen then varcon.close
next
if varcon.state<>adstateclosed then varcon.close
--------------------------------------------------------------------------------
Private sub Form_Unload(Cancel as Integer)
On Error Resume Next
Dim ws as Workspace
Dim db as database
Dim rs as recordset For Each ws in Workspaces
Form each Db in ws.databases
for each rs in db.recordsets
rs.close
set rs=nothing
next
db.close
set db=nothing
next
ws.close
set ws=nothing
next
End Sub
--------------------------------------------------------------------------------