Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]请问这个里面哪个程序错误?

张军军  发表于:2014-05-01 18:25:02  
复制


Sub main()
On Error GoTo Error
'系统检测是否有date.mdb文件,如果没有,则是系统第一次启动。则建立之
If Dir("c:Users \ Administrator \ Desktop \ Date.mdb") = "" Then
'注意在开始,你要确定工程引用了Mi-crosoft dao 2.5/3.5 compatibility library
Dim WS As Workspace
Dim DB As Database
Dim TD As TableDef
Dim FLD As Field
Dim IDX As Index
Dim rd As Recordset
Set WS = DBEngine.Workspaces(0)
Set DB = WS.CreateDatabase("c:Users \ Administrator \ Desktop \ Date.mdb", dbLangGeneral)
DB.Connect = ";pwd=andy"
Set TD = DB.CreateTableDef("Date")
TD.Attributes = 0
TD.Connect = ""
TD.SourceTableName = ""
TD.ValidationRule = ""
TD.ValidationText = "" 'Fied first_time
Set FLD = TD.CreateField("first_time", 8, 8)
FLD.Attributes = 1
FLD.DefaultValue = ""
FLD.OrdinalPosition = 0
FLD.Required = False
FLD.ValidationRule = ""
FLD.ValidationText = ""
TD.Fields.Append FLD 'Fied first_time
Set FLD = TD.CreateField("last_time", 8, 8)
FLD.Attributes = 1
FLD.DefaultValue = ""
FLD.OrdinalPosition = 1
FLD.Required = False
FLD.ValidationRule = ""
FLD.ValidationText = ""
TD.Fields.Append FLD 'Fied first_time
Set FLD = TD.CreateField("times", 3, 2)
FLD.Attributes = 1
FLD.DefaultValue = ""
FLD.OrdinalPosition = 2
FLD.Required = False
FLD.ValidationRule = ""
FLD.ValidationText = ""
TD.Fields.Append FLD
DB.TableDefs.Append TD
DB.Close
Set DB = WS.OpenDatabase("c:Users \ Administrator \ Desktop \ Date.mdb")
Set rd = DB.OpenRecordset("date")
With rd
AddNew.Fields("first_time") = date
AddNew.Fields("last_time") = date
AddNew.Fields("times") = 1
Update
End With
DB.Close
MsgBox "这是你第一次启动本系统!你的试用期为30天,今天是第一天,谢谢使用!"
mainForm.show '启动你和主窗体
Else '系统有date.mdb文件,则不是第一次运行,就不用建立数据库文件了.
Dim WS2 As Workspace
Dim DB2 As Database
Dim rd2 As Recordset
Set WS2 = Workspaces(0)
Set DB2 = WS2.OpenDatabase("c:Users \ Administrator \ Desktop \ Date.mdb", pwd = "springlover")
Set rd2 = DB2.OpenRecordset("date")
'开始检测用户是否修改了系统日期
rd2.MoveFirst
If rd2.Fields("last_time") > date Then
MsgBox "对不起,你在本软件的试用期骨不可以修改系统日期,否则将取消你系统的试用权,如果你想继续使用本软件。请你恢复系统日期,谢谢合作!", 48, "木瓜软件工作室"
End
End If
'开始检测是否超期
If date - rd2.Fields("first_time") >= 30 Then 设定试用期为30天
MsgBox "你已经启动本系统" & rd2.Fields("times") & "而且已经到了30天的试用期如果你想继续使用本软件,请你到本公司注册并购买正版的软件!"
End
Else
'仍在试用期内
num% = rd2.Fields("times")
rd2.Edit
rd2.Fields("last_time") = date
rd2.Fields("times") = num + 1
rd2.Update
MsgBox "这是你第" & rd2.Fields(times) & "次使用本系统,你还有" & 30 - (date - rd2.Fields(fitsr_time)) & "天的试用期,祝你今天工件愉快!"
mainForm.show '启动你的主窗体
End If
End If
Exit Sub
MsgBox "系统错误!”"

 

Top
小赵 发表于:2014-05-02 16:55:59
晕倒。军军呐,没有这样发贴的。你是老同志了。

dbaseIIIer 发表于:2014-05-02 23:18:01

你这是 VB6 代码!

mainForm.Show  


你用跟踪试试看吧,会告诉你哪里错的!



zhaoyoulong 发表于:2014-05-20 16:13:29

Set DB = WS.CreateDatabase("c:\Users \ Administrator \ Desktop \ Date.mdb", dbLangGeneral)

Set DB2 = WS2.OpenDatabase("c:\Users \ Administrator \ Desktop \ Date.mdb", pwd = "springlover")



总记录:3篇  页次:1/1 9 1 :