阳光网驿-企业信息化交流平台【DTC零售连锁全渠道解决方案】

 找回密码
 注册

QQ登录

只需一步,快速开始

扫描二维码登录本站

手机号码,快捷登录

手机号码,快捷登录

老司机
查看: 1718|回复: 0

虚拟应用平台的开放性—开发工具VA SDK

[复制链接]
  • TA的每日心情
    擦汗
    2011-7-11 17:10
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    发表于 2012-5-18 16:02:59 | 显示全部楼层 |阅读模式
    本帖最后由 益和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来共同完成。通讯原理如下图所示:

    image001.png



      通过上述方式实现一对一的双向通讯,使会话隔离,保证应用的可靠性和安全性。


    image003.png

      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最后一次出错信息




















    楼主热帖
    启用邀请码注册,提高发帖质量,建设交流社区
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表