"红尘如烟大师Access通用系统1.1"是很不错的,并且已经有好多朋友改进了许多代码,我都已经加了进去,今天我改了软件所在文件夹名称后,又发现了一个问题:"错误日志"和"登录/操作日志"两个链接表还指向原来的文件夹而导致出错(不能查看登录/操作日志和出错日志).
分析一下找到原因:这是因为按照http://www.accessoft.com/article-show.asp?id=7998所述方法更改了后台连接代码导致的,发现上述文章有一点儿缺陷,在这儿奉上解决方法:
打开"模块"->modLinkData,找到
Do Until rst.EOF
If rst("Flags") = 0 And rst("Type") = 1 Then
' MsgBox rst!Name
gintTablesCount = gintTablesCount + 1
gstrSourceTableName(gintTablesCount) = rst!Name
'如果没有指定新表名,则使用源表名作为链接表名
If Trim$(gstrLinkTableName(gintTablesCount)) = "" Then gstrLinkTableName(gintTablesCount) = gstrSourceTableName(gintTablesCount)
On Error Resume Next
'删除原来的链接表
DoCmd.DeleteObject acTable, gstrLinkTableName(gintTablesCount)
End If
rst.MoveNext
Loop
|
改为:
Do Until rst.EOF
If rst("Flags") = 0 And rst("Type") = 1 Then
'MsgBox rst!Name
gintTablesCount = gintTablesCount + 1
gstrSourceTableName(gintTablesCount) = rst!Name
'如果没有指定新表名,则使用源表名作为链接表名
If Trim$(gstrLinkTableName(gintTablesCount)) = "" Then gstrLinkTableName(gintTablesCount) = gstrSourceTableName(gintTablesCount)
'============以下两行代码由"善解人衣"添加===========
If gstrSourceTableName(gintTablesCount) = "USysErrorLog" Then gstrLinkTableName(gintTablesCount) = "错误日志"
If gstrSourceTableName(gintTablesCount) = "USysOperateLog" Then gstrLinkTableName(gintTablesCount) = "登录/操作日志"
On Error Resume Next
'删除原来的链接表
DoCmd.DeleteObject acTable, gstrLinkTableName(gintTablesCount)
End If
rst.MoveNext
Loop
|
问题解决!