当前位置: 首页 > news >正文

开源 SOAP over UDP

简介

看到有人想要实现两个 EXE 之间的互动。这可以采用 RPC 的方式嘛。

Delphi 现成的 RPC 框架,比如 WebService,比如 DataSnap;

当然,github 上面还有第三方开源的 XMLRPC 等等。

为啥要搞一个 UDP

Delphi 的 WebService 框架非常好,但它是基于 http 的。

如果我想要使用其它的通讯协议来跑这个 RPC,比如 TCP 或者 UDP,来使用 Delphi 提供的 WebService 里面的 SOAP,Delphi 没有现成的支持。

于是我给它魔改了一下。

然后就可以在客户端调用服务器端的接口函数的时候,我拦截到客户端发出去的数据,然后我就可以通过 UDP 或者通过 TCP 发送给服务器端。

然后服务器端可以执行接口的实现代码,再返回给客户端。

使用这个框架,如果是两个 EXE 程序之间简单的互相调用,直接使用 UDP 来做,程序会非常简单。

然后这两天看到有人想要两个 EXE 程序互动。好吧,我把这个开源出来,谁想用自己去下载。

地址:

https://github.com/pcplayer/SOAP_over_UDP.git

如果你觉得有用,请回来点个赞。

相关文章:

开源 SOAP over UDP

简介 看到有人想要实现两个 EXE 之间的互动。这可以采用 RPC 的方式嘛。 Delphi 现成的 RPC 框架,比如 WebService,比如 DataSnap; 当然,github 上面还有第三方开源的 XMLRPC 等等。 为啥要搞一个 UDP Delphi 的 WebService …...

Levenshtein 距离的原理与应用

引言 在文本处理和自然语言处理(NLP)中,衡量两个字符串相似度是一项重要任务。Levenshtein 距离(也称编辑距离)是一种常见的算法,用于计算将一个字符串转换为另一个字符串所需的最少编辑操作次数。这些操作…...

解决json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

前言 作者在读取json文件的时候出现上述报错,起初以为是自己json文件有问题,但借助在线工具查看后发现没问题,就卡住了,在debug的过程中发现了json文件读取的一个小坑,在此分享一下 解决过程 原代码 with open(anno…...

hive中的四种排序类型

1、Order by 全局排序 ASC(ascend): 升序(默认) DESC(descend): 降序 注意 :只有一个 Reducer,即使我们在设置set reducer的数量为多个,但是在执行了order by语句之后,当前此次的运算还是只有…...

Spring-AI讲解

Spring-AI langchain(python) langchain4j 官网: https://spring.io/projects/spring-ai#learn 整合chatgpt 前置准备 open-ai-key: https://api.xty.app/register?affPuZD https://xiaoai.plus/ https://eylink.cn/ 或者淘宝搜: open ai key魔法…...

【brew安装失败】DNS 查询 raw.githubusercontent.com 返回的是 0.0.0.0

从你提供的 nslookup 输出看,DNS 查询 raw.githubusercontent.com 返回的是 0.0.0.0,这通常意味着无法解析该域名或该域名被某些 DNS 屏蔽了。这种情况通常有几个可能的原因: 可能的原因和解决方法 本地 DNS 问题: 有可能是你的本…...

HTML——29. 音频引入二

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>音频引入</title></head><body><!--audio:在网页中引入音频IE8以及之前版本不支持属性名和属性值一样&#xff0c;可以只写属性名src属性:指定音频文件…...

代码随想录训练营第三十四天| 62.不同路径 63. 不同路径 II

62.不同路径 题目链接&#xff1a;62. 不同路径 - 力扣&#xff08;LeetCode&#xff09; 讲解链接&#xff1a;代码随想录 动态规划五步走 1 定义dp数组是到dp[i][j]时有dp[i][j]条路径 dp[i][j] &#xff1a;表示从&#xff08;0 &#xff0c;0&#xff09;出发&#xf…...

V90伺服PN版组态配置<一>

1、添加PLC之后&#xff0c;继续博图中网络视图中添加新设备&#xff0c;添加伺服驱动器组态设备 2、SINAMICS V90 PN V1.0 3、修改驱动器的IP地址。 【注意】 在项目中提前做好项目规划&#xff0c;如PLC设备从192.168.0.1开始&#xff0c;顺序递增------个位数都是CPU设备…...

又一年。。。。。。

2024&#xff0c;浑浑噩噩的一年。 除了100以内的加减法&#xff08;数据&#xff0c;数据&#xff0c;还是数据。。。。。。&#xff09;&#xff0c;似乎没做些什么。 脸盲症越来越重的&#xff0c;怕是哪天连自己都不认得自己的了。 看到什么&#xff0c;听到什…...

xterm + vue3 + websocket 终端界面

xterm.js 下载插件 // xterm npm install --save xterm// xterm-addon-fit 使终端适应包含元素 npm install --save xterm-addon-fit// xterm-addon-attach 通过websocket附加到运行中的服务器进程 npm install --save xterm-addon-attach <template><div :…...

医疗数仓业务数据采集与同步

业务数据采集与同步 业务采集组件配置业务数据同步概述数据同步策略选择数据同步工具概述1.1.4 全量表数据同步DataX配置文件生成全量表数据同步脚本增量表数据同步 MySQL - Maxwell - Kafka - Flume - HDFSMaxwell配置增量表首日全量同步 业务采集组件配置 Maxwell将业务采集到…...

数字孪生智慧水利与水务所包含的应用场景有哪些?二者有何区别

水利和水务是两个密切相关但有所区别的概念&#xff0c;它们在水资源管理和保护方面各自承担着不同的职责和功能。 定义 智慧水务&#xff1a;智慧水务是指通过物联网、大数据、云计算、人工智能等新一代信息技术&#xff0c;对城市供水、排水、污水处理、水质监测等水务系统…...

Qt Creator项目构建配置说明

QT安装好之后&#xff0c;在安装目录的Tools\QtCreator\bin下找到qtcreator.exe文件并双击打开 点击文件-新建文件或项目 选择Qt Widgets Application 设置项目名称以及路径 make工具选择qmake&#xff08;cmake还未尝试过&#xff09; 设置主界面对应类的名称、父类&#…...

进程间通信的“五大武器”

&#x1f604;作者简介&#xff1a; 小曾同学.com,一个致力于测试开发的博主⛽️&#xff0c;主要职责&#xff1a;测试开发、CI/CD 如果文章知识点有错误的地方&#xff0c;还请大家指正&#xff0c;让我们一起学习&#xff0c;一起进步。 &#x1f60a; 座右铭&#xff1a;不…...

全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之循环结构(for循环语句)(六)

实战训练1—输出九九乘法表 问题描述: 在学校里学过九九乘法表&#xff0c;编程实现打印九九乘法表。 输入格式&#xff1a; 无输入 输出格式&#xff1a; 1*11 2*12 2*24 3*13 3*26 3*39 4*14 4*28 4*312 4*416 5*15 5*210 5*315 5*420 5*525 6*16 6*212 6*318 6*424 6*5…...

封装echarts成vue component

封装echarts成vue component EChartsLineComponent 文章目录 封装echarts成vue component EChartsLineComponent封装说明重写重点EChartsLineComponent的源码 使用说明调用EChartsLineComponent示例源码 封装说明 为了减少一些公共代码和方便使用echarts的line图形&#xff0c…...

uniapp Stripe 支付

引入 Stripe npm install stripe/stripe-js import { loadStripe } from stripe/stripe-js; Stripe 提供两种不同类型组件 Payment Element 和 Card Element&#xff1a;如果你使用的是 Payment Element&#xff0c;它是一个更高级别的组件&#xff0c;能够自动处理多种支…...

Windows onnxruntime编译openvino

理论上来说&#xff0c;可以直接访问 ONNXRuntime Releases 下载 dll 文件&#xff0c;然后从官方文档中下载缺少的头文件以直接调用&#xff0c;但我没有尝试过。 1. 下载 OpenVINO 包 从官网下载 OpenVINO 的安装包并放置在 C:\Program Files (x86) 路径下&#xff0c;例如…...

vue3+TS+vite中Echarts的安装与使用

概述 技术栈&#xff1a;Vue3TsViteEcharts 简述&#xff1a;图文详解&#xff0c;教你如何在Vue项目中引入Echarts&#xff0c;封装Echarts组件&#xff0c;并实现常用Echats图列 文章目录 一&#xff0c;效果图 二&#xff0c;引入Echarts 2.1安装Echarts 2.2main.ts中引…...

【高清视频】PCIe 5.0 144 Lane 8槽位 PCIe Switch卡实拍讲解

我们之前拍摄了一个基于Broadcom的PCIe 5.0 PEX89144的144 lane的PCIe 5.0的扩展板 - “一张144 lane Gen5 switch卡&#xff0c;如何在桌面上扩出8个x16 PCIe测试环境&#xff1f;”&#xff0c;但是当时没有连接主机进行lspci的演示&#xff0c;今天的视频补上&#xff0c;感…...

OpenClaw+gemma-3-12b-it内容助手:自动生成技术文章与排版

OpenClawgemma-3-12b-it内容助手&#xff1a;自动生成技术文章与排版 1. 为什么需要自动化内容生产线 作为技术自媒体创作者&#xff0c;我每周需要产出3-5篇深度技术文章。传统写作流程中&#xff0c;最耗时的不是核心内容创作&#xff0c;而是反复调整格式、插入代码块、优…...

DeepChat行业应用:生物医药文献摘要→靶点关系提取→实验设计建议

DeepChat行业应用&#xff1a;生物医药文献摘要→靶点关系提取→实验设计建议 1. 项目背景与核心价值 在生物医药研发领域&#xff0c;研究人员每天需要阅读大量文献&#xff0c;从海量信息中提取关键发现、识别药物靶点关系&#xff0c;并设计后续实验方案。传统的人工处理方…...

飞书机器人集成OpenClaw与百川2-13B-4bits量化版:对话触发任务实战

飞书机器人集成OpenClaw与百川2-13B-4bits量化版&#xff1a;对话触发任务实战 1. 为什么选择这个技术组合 去年冬天&#xff0c;我接手了一个小团队的内部效率优化项目。团队每天需要从海量行业报告中提取关键数据&#xff0c;整理成简报表。最初尝试用传统RPA工具&#xff…...

终极指南:如何使用Consul实现HyperLPR车牌识别服务的微服务化改造

终极指南&#xff1a;如何使用Consul实现HyperLPR车牌识别服务的微服务化改造 【免费下载链接】HyperLPR High Performance Chinese License Plate Recognition Framework. 项目地址: https://gitcode.com/gh_mirrors/hy/HyperLPR HyperLPR作为高性能的中文车牌识别框架…...

嵌入式工程师的中年危机与转型策略

1. 嵌入式工程师的中年危机&#xff1a;一个行业的缩影44岁的梧桐&#xff0c;一位拥有21年嵌入式开发经验的资深架构师&#xff0c;在2023年的寒冬里收到了人生第一封解约通知书。这个场景让我想起公司上周的招聘会——38岁的候选人简历被默默放进了"待定"文件夹&am…...

STM32开发方式对比与HAL库深度解析

1. STM32开发方式概述对于刚接触STM32的开发者来说&#xff0c;选择合适的开发方式是首要问题。目前主要有三种开发方式&#xff1a;直接操作寄存器、使用标准库&#xff08;Standard Peripheral Library&#xff09;和使用HAL库&#xff08;Hardware Abstraction Layer&#x…...

OpenClaw+Phi-3-mini-128k-instruct:中文长文本处理专项优化

OpenClawPhi-3-mini-128k-instruct&#xff1a;中文长文本处理专项优化 1. 为什么需要中文长文本专项优化&#xff1f; 在日常工作中&#xff0c;我经常需要处理各种中文长文本材料——从几十页的商业合同到上百页的学术论文。这些文档不仅篇幅长&#xff0c;还包含大量专业术…...

嵌入式开发中的MVC模型应用与实践

1. 嵌入式开发中的MVC模型概述在嵌入式系统开发领域&#xff0c;我们常常面临一个关键挑战&#xff1a;如何组织复杂项目中的代码结构&#xff1f;作为一名有十年经验的嵌入式开发者&#xff0c;我发现很多新手工程师习惯想到哪写到哪&#xff0c;结果项目稍具规模就陷入难以维…...

Python安全编程:保护你的代码和数据

Python安全编程&#xff1a;保护你的代码和数据 前言 大家好&#xff0c;我是第一程序员&#xff08;名字大&#xff0c;人很菜&#xff09;。作为一个非科班转码、正在学习Rust和Python的萌新&#xff0c;最近我开始关注Python的安全编程。说实话&#xff0c;一开始我对安全编…...