C#调用C++写的Dll时的运行时错误解决

简介: 两个错误: 1. Run-Time Check Failure #0 - The value of ESP was not properly saved across afunction call.

两个错误:

 

1. Run-Time Check Failure #0 - The value of ESP was not properly saved across a
function call. This is usually a result of calling a function declared with one
calling convention with a function pointer declared with a different calling convention

 

先把dll的项目属性中C/C++->Code Generation->Basic Runtime Checks的属性改为Default

 

2. System.AccessViolationException: 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。

查看一下你的dll中的函数,如果函数返回是采用某个局部变量,需要把这些返回的局部变量都声明为static

 

问题解决!!

目录
相关文章
|
30天前
|
数据处理 C# C++
如何使用C#和C++结构体实现Socket通信
如何使用C#和C++结构体实现Socket通信
|
22天前
|
Linux 编译器 程序员
【Linux 调试秘籍】深入探索 C++:运行时获取堆栈信息和源代码行数的终极指南
【Linux 调试秘籍】深入探索 C++:运行时获取堆栈信息和源代码行数的终极指南
65 0
|
5月前
|
C++
C/C++ DLL 简单实现
C/C++ DLL 简单实现
44 0
|
6月前
|
C# 开发工具 C++
简单C#类转非托管C++
简单C#类转非托管C++
|
26天前
|
存储 安全 编译器
【C++ 多态 】深入理解C++的运行时类型信息(RTTI):dynamic_cast和typeid的应用与原理
【C++ 多态 】深入理解C++的运行时类型信息(RTTI):dynamic_cast和typeid的应用与原理
48 1
|
30天前
|
开发框架 Java .NET
C#编程语言的优势与C++对比
C#编程语言的优势与C++对比
|
2月前
|
C++ 计算机视觉 Python
【Py调用C++】使用使用python调用C++生成dll处理图像(OPENCV)
【Py调用C++】使用使用python调用C++生成dll处理图像(OPENCV)
37 0
【Py调用C++】使用使用python调用C++生成dll处理图像(OPENCV)
|
3月前
|
缓存
C++11实用技术(五)泛型编程加载dll接口函数
C++11实用技术(五)泛型编程加载dll接口函数
25 0
|
5月前
|
存储 编译器 C++
《C++避坑神器·十五》动态库只有dll文件,没有.lib文件时动态调用dll的中类和成员函数
《C++避坑神器·十五》动态库只有dll文件,没有.lib文件时动态调用dll的中类和成员函数
118 0
|
5月前
|
C++
《C++避坑神器·九》小白也能轻易掌握动态链接库DLL的使用
《C++避坑神器·九》小白也能轻易掌握动态链接库DLL的使用
62 0