Foxtable(狐表)用户栏目专家坐堂 → [求助]再提关于已发布程序旧版本程序回收问题


  共有13985人关注过本帖树形打印复制链接

主题:[求助]再提关于已发布程序旧版本程序回收问题

帅哥哟,离线,有人找我吗?
ddlzq
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:418 积分:3209 威望:0 精华:0 注册:2010/2/24 13:33:00
[求助]再提关于已发布程序旧版本程序回收问题  发帖心情 Post By:2010/8/31 8:50:00 [只看该作者]

各位老师:

      当我用狐表做了某个程序后,写了程序版本号,但用户需要修改这个程序表结构或增加表,那么我用开发版加了表,并加进了可视化授权,通知了用户,如果用户使用新发布的程序就不会提示找不到新加的表,但用户忘记使用新发布的程序或故意使用旧程序,那么登录后先提示找不到新加的表,然后又提示


图片点击可在新窗口打开查看此主题相关图片如下:捕获.jpg
图片点击可在新窗口打开查看
可视化授权部份失效了,用户可以得到某些列的不可编辑的编辑权限,请问各位老师,如果能避免改表了,用户不使用新版,旧版不能用或不出现错误提示?

以前提过用使用版本号强制用户升级,有老师指导加程序版本号验证。无奈是初学者,不会编代码T_T。能不能使用当出错时判断就打不开狐表呢?请各位老师指点

[此贴子已经被作者于2010-8-31 13:09:27编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/8/31 9:08:00 [只看该作者]

如果旧版本的程序没有加上版本检测,那是没有办法避免用户故意用旧版本的。

 


 回到顶部
帅哥哟,离线,有人找我吗?
ddlzq
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:418 积分:3209 威望:0 精华:0 注册:2010/2/24 13:33:00
  发帖心情 Post By:2010/8/31 9:42:00 [只看该作者]

哦,那狐爸,能不能简单判断出现任何错误,狐表就不再继续加载表了呢?

您能不能帮指点下怎么判断版本检测 ?

我理解是不是在授权表里加一列,把这个表可视化授权都写上一个版本号,然后在loadusersetting中加判断,如果版本号对不上那就所有表不可见?是吗?


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/8/31 9:58:00 [只看该作者]

在AfterOpenproject事件中设置代码,检查版本号,不符就退出

 回到顶部
帅哥哟,离线,有人找我吗?
ddlzq
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:418 积分:3209 威望:0 精华:0 注册:2010/2/24 13:33:00
  发帖心情 Post By:2010/8/31 10:10:00 [只看该作者]

好的 谢谢狐爸,我自己琢磨试试

 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2010/8/31 12:17:00 [只看该作者]

Output.show("程序版本: " & My.Application.Info.Version.ToString)

 回到顶部
帅哥哟,离线,有人找我吗?
ddlzq
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:418 积分:3209 威望:0 精华:0 注册:2010/2/24 13:33:00
  发帖心情 Post By:2010/8/31 12:48:00 [只看该作者]

  求狐爸帮忙啊,如何在 AfterOpenproject获取对应表名的版本号呢?

我在现在的程序中加了个本地表名叫【验证版本】,表有三列【表名】、【当前版本号】、【服务器记录程序版本号】,表名记录数据为这个狐表程序名为"A",本表版本号为"1.0",服务器记录程序版本号为动态索引写入的,当AfterOpenproject后,对应表名去到服务器中的【版本验证专用】表中对应表名,找到表名后把服务器中记录的【版本号】行写到那个本地表的【服务器记录程序版本号】列中。然后判断两个版本号是否一致,不一致就Syscmd.Project.Exit()

 

我参考帮助中的代码:

 Dim cmd As New SQLCommand
    Dim dt As datatable

    Dim dr As DataRow = e.DataRow  '问题出在这儿,不让使用e.datarow,怎么写能定义【验证版本】表呢?
    cmd.C
    cmd.CommandText = "SELECT * From {版本验证专用} Where [表名] = '" &  dr("表名") & "'"

    dt = cmd.ExecuteReader
    If dt.DataRows.Count > 0 Then
       dr("服务器记录程序版本号") = dt.DataRows(0)("版本号")  
End If

 

狐爸能不能帮助给指点下?

[此贴子已经被作者于2010-8-31 13:08:06编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
ddlzq
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:418 积分:3209 威望:0 精华:0 注册:2010/2/24 13:33:00
  发帖心情 Post By:2010/8/31 12:53:00 [只看该作者]

以下是引用blackzhu在2010-8-31 12:17:00的发言:
Output.show("程序版本: " & My.Application.Info.Version.ToString)

blackzhu老师,这个是验证当前编的狐表程序的版本号吗?


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/8/31 13:02:00 [只看该作者]

以下是引用ddlzq在2010-8-31 12:53:00的发言:

blackzhu老师,这个是验证当前编的狐表程序的版本号吗?

 

是的


 回到顶部
帅哥哟,离线,有人找我吗?
czy
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/8/31 13:05:00 [只看该作者]

以下是引用狐狸爸爸在2010-8-31 13:02:00的发言:

 

是的

 

怎么获取自己发布项目的版本号?

好象以前有说过搞不清楚了。


 回到顶部
总数 13 1 2 下一页