以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]如何在更新后显示更新日志窗口  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=76739)

--  作者:13865161910
--  发布时间:2015/11/4 11:13:00
--  [求助]如何在更新后显示更新日志窗口
请教,想设计一个更新日志窗口,在项目启动的时候判定是否有更新,无更新,正常打开下一步窗口,已解决
有更新,在更新完毕后,会需要重新启动项目,再次启动程序,这时候能打开设计好的更新日志窗口,且只在第一次打开后提示,该如何实现?

看到有人提到用SaveConfigValue和GetConfigValue来实现,请教代码如何实现?



[此贴子已经被作者于2015/11/4 11:15:46编辑过]

--  作者:大红袍
--  发布时间:2015/11/4 11:20:00
--  

发布的前,执行

SaveConfigValue("打开次数", 0)

 

 

然后判断代码

Dim Count = GetConfigValue("打开次数", 0)

If count = 0 Then

    Forms("更新日志").Show

    SaveConfigValue("打开次数", 1)

End If


--  作者:13865161910
--  发布时间:2015/11/4 11:32:00
--  回复:(大红袍)发布的前,执行SaveConfigValue("打...
发布的前,执行没弄明白是什么意思,发布前如何执行?是手动执行保存吗?这两段代码要写在何处呢?
[此贴子已经被作者于2015/11/4 11:32:20编辑过]

--  作者:大红袍
--  发布时间:2015/11/4 11:37:00
--  

1、发布前前手动运行代码;

 

2、写到比如afterOpenProject事件去

[此贴子已经被作者于2015/11/4 11:37:41编辑过]

--  作者:13865161910
--  发布时间:2015/11/4 12:37:00
--  回复:(大红袍)1、发布前前手动运行代码;?...
1、必须要在发布前手动执行改代码吗?有什么别的思路 可以通过自动的方式实现呢?
2、是否需要将count的值保存到注册表中?仅仅是在本地程序发布前,进行手动运行保存次数即可吗?如何保证用户所更新的*.zip 文件包中,也会直接将打开次数重置为0,从而判断是否显示更新窗口
3、由于设计的登录窗口中的文本框,是通过读取本地txt文件内容,来显示的,是不是我在编辑好此txt文本内容后,可将其直接放在project文件夹中,然后一起发布,不用另外设置下载到某个路径
[此贴子已经被作者于2015/11/4 14:03:56编辑过]

--  作者:大红袍
--  发布时间:2015/11/4 14:25:00
--  

把txt文件放到project文件夹下,命名为 更新.txt

 

然后,看是否存在 更新.txt,如果存在,就打开显示出来

 

显示结束以后,把 更新.txt 改名为 更新-已读.txt

 

http://www.foxtable.com/help/topics/0331.htm

 


--  作者:13865161910
--  发布时间:2015/11/4 14:59:00
--  回复:(大红袍)把txt文件放到project文件夹下,命名...
这样写不知是否正确,代码写在afteropenproject中
 Dim Count1 = GetConfigValue("打开次数", 0)
 If count1 = 0 Then
         If FileSys.FileExists(projectPath & "Prompt update\\更新.txt", ) Then \'如果文件“更新.txt”存在
             Forms("更新").Show \'显示更新日志
         End If
     SaveConfigValue("打开次数", 1)
 End If
然后再更新窗口的确认或关闭按钮设置代码:
FileSys.RenameFile(projectPath & "Prompt update\\更新.txt", "更新-已读.txt")

e.Form.Close


不知此方法可对?另外有个疑问,当更新日志已读后,项目再次更新,当第二次阅读此更新文档后,重命名是否会出现文件已存在的情况,从而出错,还是直接重命名覆盖保存?


是否要在窗口的按钮代码做个判断,如判断已读文件是否存在,如存在删除,然后在对目录下的更新.txt进行重命名操作?

[此贴子已经被作者于2015/11/4 15:00:51编辑过]

--  作者:大红袍
--  发布时间:2015/11/4 15:02:00
--  
不需要记录打开次数了,你已经用重命名实现了。
--  作者:大红袍
--  发布时间:2015/11/4 15:03:00
--  
重命名或者删除,都可以的。你喜欢。
--  作者:13865161910
--  发布时间:2015/11/5 11:00:00
--  回复:(大红袍)重命名或者删除,都可以的。你喜欢。...
If FileSys.FileExists(projectPath & "Prompt update\\更新.txt", ) Then \'如果文件“更新.txt”存在
      Forms("更新").Show \'显示更新日志
End If

代码中的路径如果使用系统变量,相对路径读取,提示我

此主题相关图片如下:qq截图20151105110006.jpg
按此在新窗口浏览图片

如何直接将路径改为
If FileSys.FileExists(projectPath & "更新.txt", ) Then \'如果文件“更新.txt”存在
      Forms("更新").Show \'显示更新日志
End If
又会提示找不到project路径下的文件

[此贴子已经被作者于2015/11/5 11:01:31编辑过]