程序发布
视频讲解
- 将程序通过项目发布功能上传到服务器端,实现程序的浏览器自动发布及运行,为桌面运行提供自动升级
程序编译完成后就可以将程序文件打包了,登录系统设置进入项目管理:
一、项目管理
【查询】:根据条件刷新项目列表。
【发布新项目】:制作新的项目安装包。
【重新导入】:重新导入本地的项目文件配置。如果从别的服务器拷贝过来项目文件后,点击该按钮可以导入项目信息到列表。
点击【发布新项目】或者选择已有项目的【编辑】按钮进入项目打包界面。

二、项目发布
- 刷新
从服务器重新获取项目信息,忽略未保存的修改。
- 保存
保存项目数据。这里只是保存项目数据,并不会将项目文件重新上传,若要上传新的版本点击【发布】按钮
- 另存为
将本项目另存为一个新项目
发布
发布 保存项目数据并将本地文件打包上传到服务器
发布并通知升级 发布完成后通知已经打开的客户端升级,用户可以选择升级或者不升级
发布并通知强制升级 发布完成后通知已经打开的客户端升级,倒计时结束后强制升级
安装包
生成一个在线安装包程序,如果不通过浏览器分发,就可以将这个安装文件发送给客户,安装时安装包会从服务器下载最新的文件进行安装。
每个界面都会有帮助按钮,点击帮助按钮会有各项目的说明。
三、项目类型

新建项目发布,首先需要选择项目的类型,项目类型被确认后将无法修改。目前包含如下类型:
- 程序
常规的程序项目,通过 VDN 发布后实现浏览器运行或者桌面运行。服务端存储目录目录为:Project\Package
- PB 插件
使用 PB 开发的小程序,以 plugin 的形式发布到服务器,可以通过 VDN 客户端或者 Web 接口访问其功能。服务端存储目录为:Project\Extern
- Web App
前台 html,后台 PB 代码的 Web 项目。服务端存储目录为:Project\WebApp
四、项目信息

着重解释一下启动程序文件安全保护选项,选中该选项则系统启动时会对设置定为【安全监测】的文件进行物理比对,如果文件被修改了则从服务器下载覆盖。检测完毕之后程序会锁定该文件直至程序被关闭。
- 安装目录
默认安装到用户目录 APPData,如果需要安装到【Program Files】则指定使用关键字%ProgramFiles%替代
- 自定义目录
客户端安装时用户可以自己选择安装目录
- 启用程序文件保护
程序启动时会对文件进行物理检测,查看文件内容同服务器对应内容是否相同,不同则进行升级。否则只是比对配置文件
- 共享组件
指定该项目是否为共享组件项目,当为共享组件项目时,该项目中的文件可以被其他项目共享。项目名称将出现在共享组件列表中。
可以将一些被多个项目都重复使用的的文件放到共享组件项目中,比如 PB 的动态库,一些不会经常变化的文件。
这样不但可以加快项目发布的速度,而且可以避免文件重复保存在服务器端,减少文件体积。
- 文件按用户发布
当一个项目需要多个用户维护,且每个用户负责的文件不同时,可以选中该选项,每个用户只会更新自己的添加的文件。例如:Web 项目,html 页面和 pbd 是分别为多个人负责的,则可以选中该选项。
五、扩展属性

当项目类型不为【程序】时,需要维护项目的扩展属性

- Application Name
后台 PB 程序的 Application Name,例如:pbfunction。
该属性只为 VDN 内部调用使用,外部调用锁指明的都是名称为【项目信息】--【项目名称】。
- VM 版本
后台 PB 程序所使用的 PBVM 的版本,对应 PBVM*.DLL 后面的数字。
身份验证
VDN 访问 仅限通过 VDN 客户端进行访问
本地访问 仅允许本地域(匿名)访问(安全性一般,可能被模拟)
匿名访问 无验证限制,允许任何形式的访问
令牌访问 客户端必须通过约定的形式获取令牌后才可以进行访问, 适用于外部域进行访问,安全性高;本地访问用户登录后自动获取令牌
用户验证 登陆后在 Session 中记录用户登录标志才可以进行访问
URL 子路径
设置项目的 URL 访问子路径, 例如设置 web,则可以通过http://www.xxx.com:8088/web 访问该项目, 适用于 Web App、WebAPI 项目
- 默认页面
访问 Web App 项目未指定具体文件时默认显示的页面.
六、安装文件

6.1、功能解释
【新建目录】在选定的目录下建立子目录。
【删除目录】删除选定的目录
【添加文件】单个添加文件
【添加目录】系统遍历指定的目录根据选择的文件过滤条件,批量添加文件到项目里。建议将:程序运行所需要的文件包括 EXE、PBD、DLL 集中放在一个目录下,然后利用该功能快速添加文件和子目录。
【删除】删除选定的文件或目录
【文件尺寸】按照文件类型、扩展名、目录统计文件尺寸,辅助用户缩小项目提价,减少发布时间。
【视图】修改列表试图样式
【设置】设置按照目录添加文件时的文件过滤条件
6.2、目录解释
【程序目录】
项目类型为【程序】时,对应【项目信息】里设置的安装目录。下面可以建立若干子目录,但是子目录里必须有文件,因为安装包不会记录目录信息,只会根据文件建立目录,所以空目录不会被建立。
项目目录为其他类型时,则对应服务器端的目录。
当类型为【Web App】时,PBD 放在 bin 目录中
【Windows】操作系统对应的 windows 目录
【System32】32 位系统为 System32 目录,64 为系统为 Syswow64 目录。
6.3、文件属性

原文件名可以和目标文件名不同。
重要
- 会被动态修改的文件,比如 ini 文件,不要选择自动更新,否则系统会出现反复升级的情况。
PBD、EXE 文件会自动设置为【安全监测】。这样的文件如果服务器版本被更新了,而客户端这个文件又被占用了,就会导致系统不能启动,防止程序版本不一致。占用被解除后,系统自动更新并启动程序。 其余的内容参见系统里的帮助按钮。
DLL、OCX 文件会被设置为自动注册,PB 自带的 DLL 不要选择自动注册,否则有些文件注册会报错。
七、共享组件

选择已经发布的共享组件,来共享项目文件,避免重复发布。 默认有:Vesn Data Client 组件,选中该组件后就无须在项目中添加 VDN 的客户端文件,服务器端升级后客户端动态库也会一起升级,避免兼容性问题。
八、快捷方式
创建快捷方式到:系统首页、桌面、程序菜单


指向程序的快捷方式

指向超级链接的快捷方式

URL 子路径访问
【类型】
程序:指向程序项目,通过浏览器运行程序项目
超级链接:指向一个 URL 地址,目标为 Web 站点或页面
【位置】
首页项目列表:当通过浏览器运行时,显示在系统首页的项目类表里
URL 子路径:可以通过访问 URL 子路径直接访问该快捷方式
程序菜单:快捷方式放在 Windows 的开始菜单的程序菜单里
桌面:快捷方式放在 Windows 桌面注意当快捷方式放在程序菜单或者桌面时会直接运行程序,而不是通过浏览器运行 .
【目标】
选择指向的程序或者输入相对、绝对 URL 地址
【打开位置】
超级链接打开时页面时的位置
_blank 在新窗口中打开被链接文档
_self 默认。在相同的框架中打开被链接文档
_parent 在父框架集中打开被链接文档
_top 在整个窗口中打开被链接文档
framenam 在指定的框架中打开被链接文档
【URL 子路径】
可以通过访问 URL 子路径直接访问该快捷方式(例如http://www.xxx.com/xxx/ 则: 子路径为:xxx。
【命令行参数】
运行程序时传递给程序的参数。
如果要通过 URL 地址向程序动态传递参数,使用项目 URL 地址后面以 &parm=参数 的形式设置参数**(参数中不要出现 / 分隔符,parm 小写)**。如:http://demo.vesn.net/run?action=20210606195903902001&parm=参数
如果通过 浏览器运行,则需要通过 VDN 组件的 CommandLine 属性获取命令行,例如:uo_vdn.CommandLine
【显示】 不选中则快捷方式将不会出现在首页项目列表中
当快捷方式位置为【URL 子路径】时代表通过 URL 子路径访问时是显示快捷图标还是直接打开程序
【管理员权限运行】
使用管理员权限运行程序,如果无特殊需求不建议选中,在开启 UAC 的情况下会弹出用户账户控制对话框
【默认首页】
选中则在第一次通过 URL 子路径访问该快捷方式 VDN 会自动将该快捷方式设置为首页。 通过 http://xxxx:port?reset 来恢复默认首页,例如:http://www.xxx.net:8088?reset
【嵌入浏览器】
程序窗口将被嵌入在浏览器中运行
【检测存在】
当快捷方式位于桌面或者开始菜单时,选中该项,启动程序时将会检测快捷方式是否存在,不存在将自动重新建立。
【关闭后动作】
嵌入浏览器运行,如果从程序内部结束程序,而不是通过浏览器结束。这里选择程序关闭后浏览器的动作。
【验证引用来源为下列 URL】
选中本选项时只能通过指定的 URL 来源打开该快捷方式,避免通过没有指定的其他 URL 地址链接打开本快捷方式。例如实现 OA 单点登录时,指定了 OA 页面为来源地址可以增强系统的安全性。
在地址栏直接输入 URL 地址不带有参数打开快捷方式并且要验证来源,那么就需要在 URL 列表里增加"__self;",但是这样做会增加漏洞。
在地址栏直接输入 URL 地址且带有参数打开快捷方式关闭该选项才能正常使用,不建议这样去做。
URL 地址验证不区分大小写,但是必须全字匹配,不支持模糊匹配,例如:http://www.vesn.net;http://www.vesn.net/defaulst.aspx;多个URL地址用英文分号(;)分割。
九、安装操作
可以分别在安装前、安装后、更新前、更新后执行指定程序,对系统就行初始化。
如果对 VesnMsgServer 服务进行更新,在更新前需要执行 VesnMsgServer -u,停止并卸载该服务。

十、升级记录
选择在升级界面,告知用户升级内容。

十一、运行测试
配置完成后,点击【发布】按钮,发布程序到服务器。然后通过 IE 进入 VDN 首页,系统会自动显示刚才设定的快捷方式,点击后系统会自动加载并运行程序。更多信息请见【浏览器运行】

