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

2024-02-14 06:58

本文主要是介绍虚拟应用平台的开放性—开发工具VA SDK,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作者:一门
虚拟应用平台的开放性 不同于虚拟机(服务器)、虚拟操作系统、虚拟桌面,“虚拟应用”解决方案面向终端用户,提供应用级云计算服务,能够实现细颗粒度的资源管理和安全性管理,占用资源最少,是目前较为理想的企业/机构信息化平台的私有云解决方案。但是,与其它终端模式的虚拟化方案一样,也存在客户端资源的接口(例如设备驱动)以及功能扩展接口的问题。面临这一类问题,没有通用一次性解决方法,而是要求虚拟化平台具有一定的开放性,提供二次开发接口以及相应的工具(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 - yyimen - yyimen的博客
通过上述方式实现一对一的双向通讯,使会话隔离,保证应用的可靠性和安全性。
虚拟应用平台的开放性—开发工具VA SDK - yyimen - yyimen的博客
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最后一次出错信息
  

        


        



        




        
  
  



        
          
            
            评论这张
          
        


          
            
               虚拟应用平台的开放性—开发工具VA SDK - yyimen - yyimen的博客
            
            转发至微博
          
        

        
          
            
               虚拟应用平台的开放性—开发工具VA SDK - yyimen - yyimen的博客
            
            转发至微博
          
        

这篇关于虚拟应用平台的开放性—开发工具VA SDK的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/707811

相关文章

SpringBoot实现虚拟线程的方案

《SpringBoot实现虚拟线程的方案》Java19引入虚拟线程,本文就来介绍一下SpringBoot实现虚拟线程的方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录什么是虚拟线程虚拟线程和普通线程的区别SpringBoot使用虚拟线程配置@Async性能对比H

Java Stream 的 Collectors.toMap高级应用与最佳实践

《JavaStream的Collectors.toMap高级应用与最佳实践》文章讲解JavaStreamAPI中Collectors.toMap的使用,涵盖基础语法、键冲突处理、自定义Map... 目录一、基础用法回顾二、处理键冲突三、自定义 Map 实现类型四、处理 null 值五、复杂值类型转换六、处理

分布式锁在Spring Boot应用中的实现过程

《分布式锁在SpringBoot应用中的实现过程》文章介绍在SpringBoot中通过自定义Lock注解、LockAspect切面和RedisLockUtils工具类实现分布式锁,确保多实例并发操作... 目录Lock注解LockASPect切面RedisLockUtils工具类总结在现代微服务架构中,分布

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

深入浅出SpringBoot WebSocket构建实时应用全面指南

《深入浅出SpringBootWebSocket构建实时应用全面指南》WebSocket是一种在单个TCP连接上进行全双工通信的协议,这篇文章主要为大家详细介绍了SpringBoot如何集成WebS... 目录前言为什么需要 WebSocketWebSocket 是什么Spring Boot 如何简化 We

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

python中列表应用和扩展性实用详解

《python中列表应用和扩展性实用详解》文章介绍了Python列表的核心特性:有序数据集合,用[]定义,元素类型可不同,支持迭代、循环、切片,可执行增删改查、排序、推导式及嵌套操作,是常用的数据处理... 目录1、列表定义2、格式3、列表是可迭代对象4、列表的常见操作总结1、列表定义是处理一组有序项目的

C#中的Converter的具体应用

《C#中的Converter的具体应用》C#中的Converter提供了一种灵活的类型转换机制,本文详细介绍了Converter的基本概念、使用场景,具有一定的参考价值,感兴趣的可以了解一下... 目录Converter的基本概念1. Converter委托2. 使用场景布尔型转换示例示例1:简单的字符串到

Spring Boot Actuator应用监控与管理的详细步骤

《SpringBootActuator应用监控与管理的详细步骤》SpringBootActuator是SpringBoot的监控工具,提供健康检查、性能指标、日志管理等核心功能,支持自定义和扩展端... 目录一、 Spring Boot Actuator 概述二、 集成 Spring Boot Actuat