以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]小升级update1.zip不更新splash (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=80812) |
-- 作者:13865161910 -- 发布时间:2016/2/2 14:07:00 -- [求助]小升级update1.zip不更新splash 如题,由于ftp不显示升级进度,已改为http进行升级, 但发现小升级后,splash不变,大升级只有系统版本变更才会使用,除非手动修改update.txt 中后一段的日期 红袍大大说在afteropenproject加入 FileSys.CopyFile(ProjectPath & "splash.jpg", ApplicationPath & "splash.jpg", True) 但 此段代码是这样设置吗? If Syscmd.Project.Update(False,True) = False Then \'如果没有升级 Forms("窗口1").Open Else FileSys.CopyFile(ProjectPath & "splash.jpg", ApplicationPath & "splash.jpg", True) End If splash.jpg 文件放在哪里然后进行发布,实现小升级启动画面变更? 另外,请教一个问题,升级路径现在改为 http://***.***.***.***:端口号 如何在IIS中设置账号密码,类似于FTP的设置方法,通过账号密码进行访问? |
-- 作者:大红袍 -- 发布时间:2016/2/2 14:17:00 -- 直接放在update1.zip里面即可。
直接这样写,但是需要第二次启动才能用新的封面
If Syscmd.Project.Update(False,True) = False Then \'如果没有升级 FileSys.CopyFile(ProjectPath & "splash.jpg", ApplicationPath & "splash.jpg", True) [此贴子已经被作者于2016/2/2 14:17:26编辑过]
|
-- 作者:13865161910 -- 发布时间:2016/2/2 14:36:00 -- 回复:(大红袍)直接放在update1.zip里面即可。&nb... 这个实际上是通过不升级,让后将splash复制到对应目录,实现第二次启动使用新的splash。 但是有两个疑问: 1、spalsh.jpg是直接覆盖源文件吗? 2、如果将splash放在update1.zip,就需要在每次自动生成升级文件包后,附加操作,将新的splash放到update1.zip中 解决这个没有其他方法了吗? 3、另,如何在IIS网站中设置http的身份验证?! 4、发布程序的时候,弹出项目发布失败,错误信息:文件”C:\\***\\***\\Publish"正由另一进程使用,因此该进程无法访问该文件,可是我看了后台进程没有类似的文件,该如何排查,只有注销后发布才会正常!
[此贴子已经被作者于2016/2/2 14:38:44编辑过]
|
-- 作者:大红袍 -- 发布时间:2016/2/2 14:54:00 -- 1、覆盖原文件;
2、发布那里,你不是可以直接添加附件的么?
3、http无法做到身份验证的。路径你设置得复制一些不就行了?
4、如果你publish里面的exe启动了,自然不能覆盖掉重新发布。你把程序关闭了才行的。 |
-- 作者:13865161910 -- 发布时间:2016/2/2 14:59:00 -- 回复:(大红袍)1、覆盖原文件; 2、发布那... 额,对哦,忘记发布前添加文件的功能了 我刚设置了身份验证,我在浏览器登录的时候,输入账号密码就能访问了,也就是禁用匿名身份验证 但是在设置升级路径时就郁闷了,不能像ftp的方法一样设置成http://账号:密码@ip地址:端口 吗?
|
-- 作者:大红袍 -- 发布时间:2016/2/2 15:03:00 -- 不可以。 |
-- 作者:13865161910 -- 发布时间:2016/2/2 15:35:00 -- 回复:(大红袍)不可以。 刚刚发现个问题,如果发布的程序是2016-02-02 12:00:00 但显示的PublishDate 却为2016-02-02 12:02:00 这在做时间比对的时候,会容易出现误判! If ftp1.Download("\\update.txt","D:\\Version.txt") = True Then\'如果下载升级日期文件成功 Dim ud() As String = FileSys.ReadAllText("D:\\Version.txt").Split("|") Dim Sdate1 As Date = Cdate(ud(0)) \'服务器update.txt发布日期 Dim Sdate2 As Date = Cdate(ud(1)) \'服务器Version.txt发布日期 Dim Cdate1 As Date = Format(PublishDate,"yyyy/MM/dd hh:MM") \'客户端发布日期 Dim Cdate2 As Date = FileSys.ReadAllText(ProjectPath & "\\Bin\\Version.txt") \'客户端Version.txt发布日期 e.Form.Controls("Label2").text = Sdate1 e.Form.Controls("Label3").text = Sdate2 e.Form.Controls("Label4").text = Cdate1 e.Form.Controls("Label5").text = Cdate2 If Sdate1 > Cdate1 Then \'如果服务器版本发布日期大于客户端发布日期 e.Form.Controls("NEW").Visible = True MessageBox.Show("有新版本客户端可供下载,请点击[立即下载]","提示" ) Else e.Form.Controls("NEW").Visible = False End If [此贴子已经被作者于2016/2/2 15:36:51编辑过]
|
-- 作者:大红袍 -- 发布时间:2016/2/2 15:39:00 -- 我msgbox看了一下,没问题的
msgbox(PublishDate)
应该是转换的时候错了,改成
Dim Cdate1 As Date = Format(PublishDate,"yyyy/MM/dd HH:mm") \'客户端发布日期 |
-- 作者:13865161910 -- 发布时间:2016/2/3 12:47:00 -- 回复:(大红袍)我msgbox看了一下,没问题的 ... 真奇怪,我将hh:MM改为HH:mm,保存后,再打开代码编辑器,竟然又还原了 O.O 好神奇的说
|
-- 作者:13865161910 -- 发布时间:2016/2/3 12:48:00 -- 额,好了,估计出现了点小小的BUG,关闭窗口,在重新开编辑代码,问题解决了 感谢大红袍版主
|