访问冲突(也称为分段故障)通常是尝试访问CPU无法物理寻址的内存。它通常在尝试访问空引用或对已释放的内存的引用时引起。
我们的代码记录各种有意义的事件。通常日志记录工作得很好,但今天日志功能在返回时导致访问冲突。我猜堆已被某种方式损坏,但它......
Delphi 11.2 Alexandria 中的 OWC11 - TPivotTable.Create 上的访问冲突
我们现在在创建 TPivotTable 类的实例时收到访问冲突。这在以前的 Delphi 版本中一直有效,没有问题。 重现步骤: 导入类型库...
我想不出更好的标题,所以请随意提出建议。 我尝试遵循 OneLoneCoder 的声音合成教程,我第一个视频只看了一半,我的代码已经
我有一个简单的程序,但在 *(str + start) 处出现访问冲突。为什么?我应该能够改变它。正确的? 无效 fn() { char *str = "你好,wordl!"; int 结束 = strlen(str); int s...
GCC 仅在 static_cast 中使用时才会警告越界数组访问,即使启用了大多数警告选项也是如此。 示例代码(实时): #包括 #包括 #在...
以下函数在 stbi_load 上抛出访问冲突异常,但我没有看到任何原因 unsigned int TextureFromFile(const char* 路径, const 字符串&目录, bool
为什么我的类函数 LoadFromFile() 出现访问冲突错误? 根据我的调查,Assign() 过程似乎有错误,访问错误位于以下行: xquer :=...
Delphi:Dll -> DataSet.First 导致访问冲突
我有一个用Delphi编写的简单Dll: 库 usr_d; 用途 System.SysUtils、System.Classes、DB、Vcl.Dialogs ; {$R *.res} 过程 SetMyData(DataSet: TDataSet);export; 开始 如果已分配(数据...
我正在调试 64 位 C++(托管)故障转储(访问冲突)。 转储的总大小为 32.374.535 kb。 应用程序是多线程的,对应的调用栈只提到了m...
C# 与 postgresql 得到 3221225477 (0xc0000005) '访问冲突
我是 C# 新手,正在尝试使用 Postgres 设置 C# API。我的数据库由两个具有 1:1 关系的表组成。这是我的代码表格: [表(“通知”)] 公共...
为什么下面的 SQL 会产生指示的错误? 设置@natureRegTime:=7200; 设置@natureTime:=1; 它产生的错误是 查询异常 PHP 8.1.2-1ubuntu2.14 10.25.0 SQLSTATE[42000]:语法错误或
为什么 C++ 分段错误在 Windows 上出现,而在 Linux 上却没有?
我的程序有两个版本,一个是Linux,另一个是Windows。我注意到有时一个小的内存违规在 Linux 上不会触发任何东西,但在 Windows 上它会抛出一个
运行时 fscanf() 会出现“访问冲突”,但调试时不会出现
这里可能发生了什么? 我明白了 myProgram.exe 中 0x5081f508 (msvcr100d.dll) 处出现未处理的异常:0xC0000005:写入位置 0x041e0010 时出现访问冲突。 在这一行: fscanf(fp, " %lf...
未知模块中发生“System.AccessViolationException”类型的异常。尝试读取或写入受保护的内存
我创建了一个c++ dll,并在项目中使用[DllImport("dll")],而我在构建后使用这个dll时,它在以下函数AES_init_ctx()处崩溃; 这是我的 DLL 代码: ”
当我尝试运行这段代码时: 程序 Version_als_Kompilett; 使用 SysUtils; 类型 tRefBinBaum = ^tBinBaum; tBinBaum = 记录 wert:整数; li: tRefBinBaum; 回复:tRefBinBaum 结尾;
我正在运行 DDA 程序,但它显示“抛出未处理的异常:写入访问冲突。k 为 0x1FFF112。” /*-------------------------------------------- */ /* vi-vj 联系人 ...
将指针转换为 std::uint64_t 并再次返回指针时出现内存问题
代码如下所示。 结构节点 { 整数数据; tNode* 下一个; tNode(const int& data, tNode* next = nullptr) { 这个->数据=数据; 这个->下一个=下一个; } ...
所以,我一直在尝试使用 SFML 的 loadFromFile() 函数,但它一直给我一个访问冲突错误。它一直在给我错误和不给我错误之间来回切换。每次我...
C#,在 .Net Core 中使用来自 kernel32 的 HeapAlloc 时触发访问冲突
我创建了一个编译为 .NET Standard 2.1 的 x.dll,当我将这个库引用到 .NET Framework 控制台时,桌面应用程序成功运行,但是当我将这个库引用到 .NET Core 6 时
使用 Marshal.ReadByte() 时出现 AccessViolationException
我正在尝试将 Halcon 对象转换为位图,并在网上找到了这段代码: https://github.com/Joncash/HanboAOMClassLibrary/blob/master/Hanbo.Helper/ImageConventer.cs /// ... 我正在尝试将 Halcon 对象转换为位图,并在网上找到了这段代码: https://github.com/Joncash/HanboAOMClassLibrary/blob/master/Hanbo.Helper/ImageConventer.cs /// <summary> /// Halcon Image .NET Bitmap /// </summary> /// <param name="halconImage"></param> /// <returns></returns> public static Bitmap ConvertHalconImageToBitmap(HObject halconImage, bool isColor) { if (halconImage == null) { throw new ArgumentNullException("halconImage"); } HTuple pointerRed = null; HTuple pointerGreen = null; HTuple pointerBlue = null; HTuple type; HTuple width; HTuple height; // Halcon var pixelFormat = (isColor) ? PixelFormat.Format32bppRgb : PixelFormat.Format8bppIndexed; if (isColor) HOperatorSet.GetImagePointer3(halconImage, out pointerRed, out pointerGreen, out pointerBlue, out type, out width, out height); else HOperatorSet.GetImagePointer1(halconImage, out pointerBlue, out type, out width, out height); Bitmap bitmap = new Bitmap((Int32)width, (Int32)height, pixelFormat); BitmapData bmpData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadWrite, bitmap.PixelFormat); int bytes = Math.Abs(bmpData.Stride) * bitmap.Height; byte[] rgbValues = new byte[bytes]; IntPtr ptrB = new IntPtr(pointerBlue); IntPtr ptrG = IntPtr.Zero; IntPtr ptrR = IntPtr.Zero; if (pointerGreen != null) ptrG = new IntPtr(pointerGreen); if (pointerRed != null) ptrR = new IntPtr(pointerRed); int channels = (isColor) ? 3 : 1; // Stride int strideTotal = Math.Abs(bmpData.Stride); int unmapByes = strideTotal - ((int)width * channels); for (int i = 0, offset = 0; i < bytes; i += channels, offset++) { if ((offset + 1) % width == 0) { i += unmapByes; } rgbValues[i] = Marshal.ReadByte(ptrB, offset); //where I get the accesviolation if (isColor) { rgbValues[i + 1] = Marshal.ReadByte(ptrG, offset); rgbValues[i + 2] = Marshal.ReadByte(ptrR, offset); } } Marshal.Copy(rgbValues, 0, bmpData.Scan0, bytes); bitmap.UnlockBits(bmpData); return bitmap; } 但是当我尝试运行它时,它在读取或写入受保护的内存时得到一个 AccesViolationExeption。 有人知道为什么吗? 我已经调试并确保 IntPtr 不为空