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

VB.net调用VC DLL(二)

参考文献5,讲了在C程序中直接调用DLL和lib的函数方法,不是通过编译器连接方式

也讲了在非C程序中直接调用DLL和lib的函数方法。

实操了一下,建了win32dll项目

新建.h文件和.cpp文件

.h文件中加:

void __stdcall funcA(double* dB, double* dL);

.cpp文件中加:

void __stdcall funcA(double* dB, double* dL)

{

}

新建.def文件

LIBRARY
EXPORTS
   funcA @16

funcA后面有个空格,@后面是参数的字节数,8+8=16

编译生成了dll,放在system32下,

在VBA7下调用,

Private Declare PtrSafe Sub funcA Lib "libA.dll" (ByRef dB As Double, ByRef dL As Double)

调用函数,找不到dll,真是太奇怪了。

VBA给出的提示如下:

加载 DLL 时的错误(错误 48)
动态链接库 (DLL) 就是在 Declare 语句的 Lib 子句中所指定的库。此错误有以下的原因和解决方法: 

此文件并非可执行的 DLL。 
如果此文件是正文源文件,它必须编译并链接成可执行的 DLL 形式。 

此文件并非 Microsoft Windows DLL。 
取得此文件相应的 Microsoft Windows DLL 版。 

此文件是早期的 Microsoft Windows DLL,而且和 Microsoft Windows 保护方式不兼容。 
取得更新的版本。 

此 DLL 引用到其他不存在的 DLL。 
取得此被引用的 DLL 并让它能提供其他 DLL 使用。 

此 DLL 或所引用的 DLL 并不在所指定的目录中。 
移动 DLL 到所引用的目录或将 DLL 所在的目录添加到路径中。 

详细信息,可选取有问题的项目,并按下 F1 (在Windows中)或HELP(在Macintosh中)键。 

猜测可能是dll不是64位,重新生成64的dll,替换之前的32位 dll

函数成功调用

1、https://bbs.csdn.net/topics/390248432

2、vs开发遇到的问题之MSI未能注册模块 xxx.dll。HRESULT -2147024770。请与你的技术支持人员联系。_未能注册模块请与技术人员联系-CSDN博客

3、VBA如何调用动态链接库dll文件VBA如何调用动态链接库dll文件_微软技术-CSDN问答 

4、模块已加载,但找不到入口点DLLRegisterServer[通俗易懂]-腾讯云开发者社区-腾讯云 

5、https://www.cnblogs.com/dusty-cjh/p/8253526.html 

相关文章:

VB.net调用VC DLL(二)

参考文献5,讲了在C程序中直接调用DLL和lib的函数方法,不是通过编译器连接方式 也讲了在非C程序中直接调用DLL和lib的函数方法。 实操了一下,建了win32dll项目 新建.h文件和.cpp文件 .h文件中加: void __stdcall funcA(double…...

社团管理系统

用Spring Boot、Vue.js和MyBatis实现社团管理系统 温馨提示:项目源代码获取方式见文末 摘要 本文探讨了如何使用Spring Boot作为后端框架,Vue.js作为前端框架,以及MyBatis作为数据库持久层框架,构建一个社团管理系统。该系统旨…...

网站的文章起到什么作用

1.便于用户了解产品服务 如果想要获得更多的用户访问或者转化率,那么网站就得需要高质量、高原创的文章,通过文章可以让用户更好的了解公司的产品和服务,用户会根据自己的需求去选择服务类型,从而可以给公司产生业务订单&am…...

Science | 稀土开采威胁马来西亚的生物多样性

马来西亚是一个生物多样性热点地区,拥有超过17万种物种,其中1600多种处于濒临灭绝的风险。马来西亚的热带雨林蕴藏了大部分的生物多样性,并为全球提供重要的生态系统效益,同时为土著社区带来经济和文化价值。同时马来西亚具有可观…...

pandas read_csv跳过有错的行

在使用Pandas的read_csv函数时,如果遇到格式错误或其他导致读取失败的行,Pandas默认会抛出异常。但如果你想让Pandas自动跳过这些错误行,可以使用error_bad_linesFalse参数。这将使Pandas在遇到格式错误的行时,忽略这些行而不是中…...

VRChat 2024年裁员原因与背景深度分析

VRChat,作为2022年元宇宙/VR社交领域的巨头,近期在2024年宣布裁员计划,其背后原因和背景值得业界尤其是仍在纯元宇宙虚拟空间创业的同仁们重点关注。 一、创始人决策失误 根据CEO的邮件披露,VRChat的创始人因缺乏经验和过度自信…...

mybatisplus 笔记

int isDelete userRoleMapper.delete(new LambdaQueryWrapper<UserRole>().in(UserRole::getUserId, roleUserDTO.getUserId()).in(UserRole::getRoleId, roleUserDTO.getRoleId()));LambdaQueryWrapper<UserRole>: LambdaQueryWrapper 是 MyBatis Plus 提供的一个…...

Shell脚本(.sh文件)如何执行完毕之后不自动关闭?

Shell脚本异常傲娇&#xff0c;出错后、执行完根本不给你机会让你查看报错信息、输出信息&#xff0c;直接闪退。 废话不多说&#xff0c;调教方法如下&#xff0c;直接在Shell脚本末尾加上如下代码&#xff1a; 1、实现方式一 1.1 使用read命令达到类似bat中的pause命令效果…...

苏州辰安塑业携塑料托盘、塑料物流箱解决方案亮相2024杭州快递物流展

苏州辰安塑业携塑料托盘、吹塑托盘、塑料卡板箱、塑料周转箱、塑料物流箱、塑料垃圾桶解决方案盛装亮相2024杭州快递物流展&#xff01; 展位号&#xff1a;3C馆A51 苏州辰安塑业有限公司&#xff0c;是一家专业从事塑料托盘、吹塑托盘、塑料卡板箱、塑料周转箱、塑料物流箱、…...

大模型应用开发技术:Multi-Agent框架流程、源码及案例实战(二)

LlaMA 3 系列博客 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;一&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;二&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;三&#xff09; 基于 LlaMA…...

Flutter 实现dispose探测控件

文章目录 前言一、什么是dispose探测控件&#xff1f;1、通常情况2、使用dispose探测控件 二、如何实现1、继承StatefulWidget2、定义dipose回调3、定义child4、重载Dispose方法5、build child 三、完整代码四、使用示例1、基本用法2、设置定义数据 总结 前言 开发flutter一般…...

如何定义和衡量一个产品的成功?

定义和衡量一个产品的成功是一个多维度的过程&#xff0c;涉及用户满意度、市场表现、商业成果和技术实现等多个方面。以下是几个关键点&#xff0c;可以帮助产品经理在面试中全面阐述这一话题&#xff1a; 用户层面的成功&#xff1a; 用户满意度&#xff1a;通过用户调研、N…...

微调大模型 - 面向学术论文的AI大模型

1、优化学术交流: 该项目专注于优化学术文献的阅读、润色和写作过程,提供了实用化的交互接口。 2、模块化和可扩展性: 项目设计模块化,支持自定义快捷按钮和函数插件,便于用户根据自己的需求进行扩展。 3、多语言和多模型支持: 支持多种语言的论文翻译和总结,同时可以并行…...

java溯本求源之基础(二十四)之--常见List的实现共同点

兄弟们终于到了上代码讲代码的环节了&#xff0c;之前的一些代码都是小打小闹&#xff0c;现在才是重头戏&#xff0c;今天来简单说说一些集合&#xff0c;首先这些都是基于数组实现的&#xff0c;当然Collections.emptyList不算奥&#xff0c;别犟。剩下的不多墨迹直接上重点&…...

gin连接redis

使用Gin框架连接Redis&#xff0c;需要先安装Redis客户端库&#xff0c;例如go-redis。然后&#xff0c;你可以创建一个Redis客户端实例&#xff0c;并在Gin路由处理函数中使用它。以下是一个简单的示例&#xff1a; 1. 首先&#xff0c;安装go-redis库&#xff1a; bash go g…...

深度学习训练——batch_size参数设置过大反而训练更耗时的原因分析

&#x1f4aa; 专业从事且热爱图像处理&#xff0c;图像处理专栏更新如下&#x1f447;&#xff1a; &#x1f4dd;《图像去噪》 &#x1f4dd;《超分辨率重建》 &#x1f4dd;《语义分割》 &#x1f4dd;《风格迁移》 &#x1f4dd;《目标检测》 &#x1f4dd;《暗光增强》 &a…...

jvm必知必会-类的生命周期图文详解

类的生命周期描述了一个从加载、使用到卸载的过程; 而其中的 连接 部分又分为一下三个阶段: 验证准备解析6.1 加载阶段 Loading阶段第一步是 类加载器 会根据类全限定名通过不同的渠道以二进制流的方式获取字节码信息,程序员可以使用Java代码扩展不同的渠道。 比如通过 …...

一文看懂人工智能、机器学习、深度学习是什么、有什么区别!

引言&#xff1a;走进智能的世界 曾经&#xff0c;人工智能&#xff08;AI&#xff09;是科幻小说中的概念&#xff0c;与飞船、外星人并肩而立。 然而&#xff0c;随着时间的推移&#xff0c;AI不再仅仅是幻想的产物&#xff0c;它已经成为我们日常生活中不可或缺的一部分。 在…...

Vue47-修改默认配置webpack.config.js文件

main.js是脚手架项目的入口文件&#xff0c;系统运行时&#xff0c;默认去找src下的main.js文件。这是webpack通过配置文件&#xff1a;webpack.config.js配置的。 脚手架把所有重要的配置文件都隐藏了&#xff0c;方式被开发者修改。 一、查看被隐藏的webpack配置 1-1、webpa…...

qss实现登录界面美化

qss实现登录界面美化 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);// 去掉头部this->setWindowFlag(Qt::FramelessWindowHint);// 去掉空白部分th…...

PHP-JWT:PHP 中 JSON Web Tokens 的完整实现指南

PHP-JWT&#xff1a;PHP 中 JSON Web Tokens 的完整实现指南 【免费下载链接】php-jwt 项目地址: https://gitcode.com/gh_mirrors/ph/php-jwt Firebase PHP-JWT 是一个遵循 RFC 7519 标准的 PHP JSON Web Tokens 实现库&#xff0c;提供安全、高效的 JWT 编码和解码功…...

Navicat数据库自动备份实战:如何设置定时任务避免数据丢失

Navicat数据库自动备份实战&#xff1a;如何设置定时任务避免数据丢失 数据是现代企业的核心资产&#xff0c;一次意外的数据丢失可能造成难以估量的损失。作为数据库管理工具中的佼佼者&#xff0c;Navicat提供了强大的自动备份功能&#xff0c;能够帮助中小企业和个人开发者建…...

vLLM-v0.11.0快速入门:用OpenAI接口调用本地大模型,5分钟出结果

vLLM-v0.11.0快速入门&#xff1a;用OpenAI接口调用本地大模型&#xff0c;5分钟出结果 1. 为什么选择vLLM&#xff1f; 1.1 什么是vLLM&#xff1f; vLLM是伯克利大学LMSYS组织开源的高性能大语言模型推理框架。它通过创新的内存管理技术&#xff0c;显著提升了模型推理的效…...

TradingAgents-CN本地化部署实战指南:多智能体金融框架避坑策略

TradingAgents-CN本地化部署实战指南&#xff1a;多智能体金融框架避坑策略 【免费下载链接】TradingAgents-CN 基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版 项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN 一、问题发现&#x…...

如何高效使用Super IO插件:Blender批量导入导出终极指南

如何高效使用Super IO插件&#xff1a;Blender批量导入导出终极指南 【免费下载链接】super_io blender addon for copy paste import / export 项目地址: https://gitcode.com/gh_mirrors/su/super_io 想要在Blender中实现一键导入导出模型和图像吗&#xff1f;Super I…...

戴森球计划FactoryBluePrints:解锁游戏工厂建造的终极免费蓝图库

戴森球计划FactoryBluePrints&#xff1a;解锁游戏工厂建造的终极免费蓝图库 【免费下载链接】FactoryBluePrints 游戏戴森球计划的**工厂**蓝图仓库 项目地址: https://gitcode.com/GitHub_Trending/fa/FactoryBluePrints 还在为《戴森球计划》中复杂的工厂布局头疼吗&…...

Vue3项目实战:5分钟搞定DeepSeek API对接,打造你的专属AI聊天助手

Vue3项目实战&#xff1a;5分钟搞定DeepSeek API对接&#xff0c;打造你的专属AI聊天助手 最近在重构个人博客时&#xff0c;突然想到如果能给访客加个智能问答助手应该挺酷的。作为一个长期混迹开源社区的全栈开发者&#xff0c;我习惯性先搜了圈现有方案——结果发现DeepSeek…...

StructBERT在嵌入式Linux设备上的轻量化部署方案

StructBERT在嵌入式Linux设备上的轻量化部署方案 1. 为什么要在树莓派上跑StructBERT 你可能已经试过在笔记本或服务器上运行大模型&#xff0c;但有没有想过让AI在树莓派这样的小设备上工作&#xff1f;不是为了炫技&#xff0c;而是因为很多实际场景根本用不上那么大的机器…...

Z-Image-GGUF模型量化与压缩教程:在低显存GPU上运行大模型

Z-Image-GGUF模型量化与压缩教程&#xff1a;在低显存GPU上运行大模型 想用AI生成图片&#xff0c;但一看模型大小和显存要求就头疼&#xff1f;手头只有一张8GB显存的消费级显卡&#xff0c;是不是就只能和那些功能强大的图像生成模型说再见了&#xff1f; 别急着放弃。今天…...

实战应用:基于快马AI与OpenClaw构建Mac本地电商价格监控系统

最近在做一个电商价格监控的小工具&#xff0c;发现用OpenClaw配合Mac本地环境搭建特别方便。这里分享一下我的实战经验&#xff0c;希望能帮到有类似需求的同学。 为什么选择OpenClaw OpenClaw是个轻量级的Python爬虫框架&#xff0c;特别适合需要快速搭建数据采集系统的场景…...