问题标签 [bsod]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1035 浏览

c# - SerialPort:应用程序在传输数据时在断开设备连接时导致蓝屏

我正在为具有串行端口(带 USB 桥接器)的设备开发解决方案。一切都很好,除了它在数据传输过程中断开设备时导致蓝屏。我的应用程序没有发现任何异常。有什么办法可以处理吗?要求用户在数据完全传输之前不要断开连接不是一种方法。

我正在使用 System.IO.Ports.SerialPort 类从设备读取数据。

0 投票
2 回答
2017 浏览

windows - 为什么这个 iframe 标签会导致 x64 Windows 上的 Safari 崩溃?

如果您没有听说过这段代码在 Safari 中运行时会在 x64 位 Windows 7 上导致 BSoD 崩溃

所以很自然的问题是它到底是如何发生的,为什么 18082563 而不是说 "1808256 4 " ?

0 投票
1 回答
438 浏览

c - 使用驱动程序从特定位置读取 RAM 数据?

我正在尝试从 0x00000001 读取 RAM 数据并将其复制到硬盘中的文件(只是学习!)所以我写了这个并编译并运行它

所以我得到了 BSOD 幸运的是我使用我的 Vmware 运行它:-) 我一直认为只有应用程序没有直接从内存读取的权限。

现在我的问题是驱动程序使用直接物理地址还是虚拟地址???我的意思是在驱动程序编程(环 1 或环 2)的情况下,&pointer 返回物理或虚拟的值是什么类型。我知道环 3 应用程序将返回虚拟地址。是的,我已经开始阅读驱动程序书籍,只是想更快地了解。

0 投票
1 回答
113 浏览

windows - IoGetDeviceProperly 导致 BSOD

我已经为 Windows 中的硬盘编写了一个过滤器驱动程序(例如 DDK 的 DiskPerf),我需要获取一些有关我的驱动程序附加到它的设备的信息,例如 HardWareID。我在 IRP_MJ_READ 函数中使用 IoGetDeviceProperly。但是这种方法会导致 BSOD 并且 BSOD 说问题是“IRQL_NO_LESS_OR_EQUAL”。MSDN 说 DispatchRead 和 IoGetDeviceProperly,都在 PASSIVE_LEVEL 运行。怎么了?如何获取有关驱动程序附加到它的设备的信息?

0 投票
5 回答
313 浏览

windows - 重新启动到另一个操作系统后能否可靠地检测到蓝屏死机?

我需要在不同的操作系统中检测由 BSOD 引起的重启。这样的情况可以追查吗?内存转储是否足够?Windows 7 显示一个漂亮的对话框,表明系统已从严重错误中恢复 - 它是如何知道的?

0 投票
1 回答
1029 浏览

c++ - 运行我的程序时 Directx 11 蓝屏死机

我正在尝试使用以下代码:

drawFrame 在哪里...

我还应该提到我使用以下设置 m_flashTexture:

每当我运行此代码时(它还有更多内容,但它被埋在一堆其他类中,如果您认为其他东西有用,请告诉我。)我得到一个蓝屏死机,这是在 flashPlayer 的某个地方引起的->drawFrame() 函数。我不知道是什么导致了蓝屏。

任何想法或是否有人看到看起来会导致蓝屏的突出内容?

谢谢。

更多信息

这是崩溃转储的结果

有谁知道这意味着什么?

0 投票
2 回答
2304 浏览

c++ - Directx 11 Bitblt 替代品

我尝试将以下功能集成到我的 directx 11 应用程序中。当我使用directx9 时,一切正常,但是当转换为directx 11 时,我在Bitblt 行出现蓝屏死机错误(我一定是HDC 有问题?)。我想知道将此代码转换为 Directx 11 兼容表面而不是 HDC 的最佳方法是什么。

这是功能:

我传递给此函数的 HDC 是按以下方式创建的:

关于我做错了什么的任何想法?我似乎无法弄清楚发生了什么以及为什么当我使用 Directx 9 对象时会导致蓝屏,但它不会。有一个更好的方法吗?

(我也试过更新我的驱动程序,它们都是最新的)。

感谢您的帮助。

0 投票
1 回答
1222 浏览

bsod - Blue screen of death appears with STOP 0xC2 caused by picadm freeing a cached memory managed region

Picadm is a system driver written by us. We have enabled special pool to make sure the Blue screen happens at the point of corruption.

Blue screen happens with following information:


  • *
  • Bugcheck Analysis *
  • *

BAD_POOL_CALLER (c2) The current thread is making a bad pool request. Typically this is at a bad IRQL level or double freeing the same allocation, etc. Arguments: Arg1: 0000000000000007, Attempt to free pool which was already freed Arg2: 0000000000001097, (reserved) Arg3: 0000000000210007, Memory contents of the pool block Arg4: fffff8a004b98e00, Address of the block of pool being deallocated*

Above information shows that fffff8a004b98e00 is being freed twice leading to BSOD. Since special pool is enabled, we can check the allocations and frees history for this memory address. It gives following result:

Above shows that this address is deleted twice.

Query : It seems pretty strange to me that both thw stack trace are exactly same. Even the thread is same. What are the possible reasons of this happening. I checked the code involved in the stack trace and cannot find any while/do/for or jump statement leading to execution of the CcUninitializeCacheMap twice.

Below is the thread stack at the time BSOD happened. This is the same thread from where delete has happened:

Please any help is much appreciated!

0 投票
1 回答
2202 浏览

windows - 在 Windows 蓝屏中调用套接字绑定结果

我们发现在某些条件下运行我们的应用程序会导致 Windows 蓝屏。经过一番调查,我们能够将场景缩小到使用 Winsock2 API 的约 50 行 C 代码示例。样品-MS 请求删除的详细信息-。运行示例几秒钟后,Windows Server 2008 R2 崩溃。该问题在不同的物理机以及虚拟机上重现。

鉴于问题重现是一致的,看起来微软愿意修复的东西。报告此类错误的正确方法是什么?还有其他建议吗?

0 投票
2 回答
573 浏览

windows - 从 VM 中检索 BSOD 文本

您将如何从 virtualbox vm 中检索 BSOD 文本?

由于 BSOD 是文本,它应该存储在 VM 的内存空间中的某个地方,并且可能是某个定义明确的地方。

我有几个虚拟机被配置为在蓝屏上停止而不是重新启动,并且代码已经到位,可以定期进行屏幕截图。

此时我的计划是区分两个图像,如果没有差异(即屏幕上没有变化)并且4个角的像素都是蓝色(和右边的蓝色),那么我们尝试提取BSOD文本,在文本中搜索“ * STOP:”序列以确认它是 BSOD。

我最初计划使用一种快速而肮脏的 OCR 解决方案来从图像本身中提取文本,但是如果我们可以相对容易地从内存中提取它,我们将消除 OCR 错误的可能性。

我仔细阅读了手册和 API 参考,并没有看到任何似乎立即适用的内容。

是否可以从 Virtual Box 主机访问来宾内存并直接从内存中检索 BSOD 文本?

更新

澄清一下,我目前考虑了 4 种不同的选择

1)逆向工程windows调试协议并构建至少一个基本的调试器来监听vm的串口

  • 需要逆向工程串行协议,怀疑这会带来相当大的困难

2)对Virtualbox保存的状态文件进行逆向工程,并从我怀疑在将VM保​​存在BSOD上后存储在该文件中的VESA内存区域中提取文本

  • 我无法在源代码本身之外找到有关此文件格式的文档。

3) 对使用 API 检索的输出图像运行 OCR

  • 这可能是最好的方法,需要在我的经验之外构建或设置和训练某种 ocr 解决方案。可能做起来比较简单,等宽字体/干净的图片,只有两种颜色要处理

4) 使用 API 调用或通过创建扩展以某种方式访问​​/公开它直接访问客户内存

  • 正如 Warren 所指出的,似乎没有访问内存的 API,可能能够编写扩展以某种方式公开 vm 的内存,但需要了解 Virtualbox 的内部结构。

这是在 Solaris 主机上运行的,有些可能只有一个可用的 Windows vm 可能会或可能不会启动。此 VM 可以是任何相对较新的 Windows 版本(XP、2003、2003 R2、2008、Vista、2008 R2)。我可以生成任意数量的基于 Linux 的 VM,但由于许可问题,我无法生成其他 Windows VM。到目前为止,我的想法是直接从客人的记忆中检索它是最容易实现的,也许我错了,上面的方法之一,或者我没有想到的方法,会更容易实现