虚拟应用平台的开放性—开发工具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

相关文章

C语言中位操作的实际应用举例

《C语言中位操作的实际应用举例》:本文主要介绍C语言中位操作的实际应用,总结了位操作的使用场景,并指出了需要注意的问题,如可读性、平台依赖性和溢出风险,文中通过代码介绍的非常详细,需要的朋友可以参... 目录1. 嵌入式系统与硬件寄存器操作2. 网络协议解析3. 图像处理与颜色编码4. 高效处理布尔标志集合

Java中的Lambda表达式及其应用小结

《Java中的Lambda表达式及其应用小结》Java中的Lambda表达式是一项极具创新性的特性,它使得Java代码更加简洁和高效,尤其是在集合操作和并行处理方面,:本文主要介绍Java中的La... 目录前言1. 什么是Lambda表达式?2. Lambda表达式的基本语法例子1:最简单的Lambda表

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

深入理解Apache Kafka(分布式流处理平台)

《深入理解ApacheKafka(分布式流处理平台)》ApacheKafka作为现代分布式系统中的核心中间件,为构建高吞吐量、低延迟的数据管道提供了强大支持,本文将深入探讨Kafka的核心概念、架构... 目录引言一、Apache Kafka概述1.1 什么是Kafka?1.2 Kafka的核心概念二、Ka

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

使用Python实现全能手机虚拟键盘的示例代码

《使用Python实现全能手机虚拟键盘的示例代码》在数字化办公时代,你是否遇到过这样的场景:会议室投影电脑突然键盘失灵、躺在沙发上想远程控制书房电脑、或者需要给长辈远程协助操作?今天我要分享的Pyth... 目录一、项目概述:不止于键盘的远程控制方案1.1 创新价值1.2 技术栈全景二、需求实现步骤一、需求

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S