比如我用vb生成了一个exe文件,其中有个标签 label1的caption定义的是"good"
编译后,当第一次运行这个程序后,label1的caption便自动更新为"bad"。然后,不管以后什么时候打开,label1的caption都为"bad",这个怎么实现呢?请高手帮忙!
编译后,当第一次运行这个程序后,label1的caption便自动更新为"bad"。然后,不管以后什么时候打开,label1的caption都为"bad",这个怎么实现呢?请高手帮忙!
借助辅助文件吧
个人倾向ini
不太喜欢改注册表的
如果有数据库操作,数据库也是个不错的选择
可考虑EXE资源文件修改字符串
a.exe运行-->if good-->label1.caption= "good" -->释放b.exe-->修改a.exe字符串-->"bad"
再次运行a.exe-->if good-->...
then label1.captin="bad"思路就这样,代码就不写了,水平也不好,呵呵
Dim AlterFile As String
Dim TempStr As Integer
Dim strName As String
Dim strKey As String
Dim OffsetStep As Integer
Dim Record As IntegerPrivate Sub Command1_Click()
Dim TempByte As Integer
Dim UserData(20) As Integer
OffsetStep = 60
MainFile = App.Path & "\" & App.EXEName & ".exe"
AlterFile = App.Path & "\" & App.EXEName & "1.exe"
Open MainFile For Binary Access Read As #1
Open AlterFile For Binary Access Write As #2
For i = 1 To LOF(1)
Get #1, i, TempByte
Put #2, i, TempByte
Next i
Close #1 For i = 1 To Len(Text1.Text)
UserData(i) = AscW(Mid(Text1.Text, i, 1))
Next i
If Len(Text1.Text) < 20 Then
For i = Len(Text1.Text) + 1 To 20
UserData(i) = AscW(" ")
Next i
End If
For i = 1 To 20
OffsetStep = OffsetStep - 1
Record = LOF(2) - OffsetStep
Put #2, Record, UserData(i)
MsgBox Record & "___" & UserData(i)
Next i
Close #2
'MsgBox "数据生成成功!"
End SubPrivate Sub Form_Load()
strUser = ""
MainFile = App.Path & "\" & App.EXEName & ".exe"
Open MainFile For Binary Access Read As #1
OffsetStep = 60 '取数据
For i = 1 To 20
OffsetStep = OffsetStep - 1
Record = LOF(1) - OffsetStep
Get #1, Record, TempStr
If App.EXEName = "工程11" Then
MsgBox Record & "___" & TempStr
End If
strUser = strUser & ChrW(TempStr)
Next i
Close #1
Text1.Text = strUser
End Sub这是我整理的方法,现在出现的问题是中文不能写入如果我把 Dim TempStr As Integer 改为 Dim TempStr As Byte
可以写入英文或数字中文的问题不知道怎么解决