虚拟应用平台的开放性—开发工具VA SDK
本帖最后由 益和VA 于 2012-5-18 16:07 编辑作者:一门
虚拟应用平台的开放性 不同于虚拟机(服务器)、虚拟操作系统、虚拟桌面,“虚拟应用”解决方案面向终端用户,提供应用级云计算服务,能够实现细颗粒度的资源管理和安全性管理,占用资源最少,是目前较为理想的企业/机构信息化平台的私有云解决方案。但是,与其它终端模式的虚拟化方案一样,也存在客户端资源的接口(例如设备驱动)以及功能扩展接口的问题。面临这一类问题,没有通用一次性解决方法,而是要求虚拟化平台具有一定的开放性,提供二次开发接口以及相应的工具(SDK),以便设备生产和应用软件开发、集成厂商开发制作客户端软件(插件)。
SDK软件开发工具包 SDK(Software Development Kit 软件开发工具包),指辅助开发某一类软件的相关文档、范例和工具的集合。它可以简单的为某个程序设计语言提供应用程序接口 API的一些文件,也可能包括能与某种嵌入式系统通讯的复杂的硬件。
VA SDK通讯原理 “益和VA虚拟应用管理平台”继发布其WEB二次开发接口后,发布了VA SDK开发工具包。VA SDK二次开发支持服务端分发和加载客户端插件,并在服务端和客户端之间建立通讯通道,实现服务端与客户端的无缝衔接,提高VA应用的可扩展性。
在VA应用服务器运行的应用程序与客户端插件之间的通讯,通过服务端ARH、VA SDK-S,与客户端AR应用执行器、VA SDK-C来共同完成。通讯原理如下图所示:
通过上述方式实现一对一的双向通讯,使会话隔离,保证应用的可靠性和安全性。
VA SDK编程功能 VA SDK编程依赖于VASDK.dll和VAUtils.dll动态链接库,它为服务端和客户端的开发提供了一组功能支持,目前支持C语言(动态调用),Pascal等可以调用动态链接库的语言。
VAUtils.DLL导出函数功能
序号
函 数
功 能
1
GetVAEnv
获得VA运行环境字符串
2
GetVAEnv2
获得VA运行环境字符串
3
VACheck
检测是否在VA环境下运行
4
VACheck2
检测是否在VA环境下运行
5
GetVABindCode
此功能供合作版使用
6
GetVABindCode2
此功能供合作版使用
7
GetSessionID
获取本次应用的会话ID
8
GetConsoleSessionID
获取服务器控制台的会话ID
9
IsRunOnConsole
判断程序是否运行在控制台下
10
VaDPnt
直接端口打印,主要用于Pos打印机VA会自动映射到客户机的打印机上
11
VaDPntW
直接端口打印,主要用于Pos打印机VA会自动映射到客户机的打印机上
VASDK.DLL导出函数说明
序号
函 数
功 能
1
S_Open
打开SDK服务端
2
C_Open
打开SDK客户端
3
S_LoadPlugin
加载SDK客户端插件
4
S_UnloadPlugin
卸载SDK 客户端插件
5
S_OpenAndLoadPlugin
打开SDK服务端,并加载SDK客户端插件
6
CloseSDK
关闭已打开的SDK服务
7
SendData
向已打开的接收方发送数据
8
SendString
向已打开的接收方发送字符串数据
9
SendStrList
向已打开的接收方发送字符串列表数据
10
SendBIN
向已打开的接收方发送二进制数据
11
SetWaitMode
设置发送方发送数据后等待返回的模式
12
SendAndWait
通过通讯通道发送数据并等待接收方响应
13
RegCallBackProc
注册数据接收方的回调函数
14
GetReceiveDataPackCount
获取发送方发来数据的包数
15
GetReceiveDataPackSize
获取发送方发来数据的首包长度
16
GetReceiveDataPack
获取发送方发来的数据
17
FreeDataPack
释放发送数据的缓冲区
18
GetReceiveDataPackToBuf
获取发送方发来的数据
19
FreeBuf
释放调用GetReceiveDataPackToBuf所申请的缓冲区
20
IsRunOnConsole
判断程序是否运行在控制台下
21
GetLastError
获取SDK最后一次出错信息
页:
[1]