草庐IT

sys_break

全部标签

c++ - 在 Visual Studio 2010 中的 "break all"之后,一些线程的调用堆栈在我的 C++ 程序中几乎缺失

我的跨平台C++应用程序(使用Juce)的最新版本在Windows中可能存在死锁或可以想象的无限循环,但在Mac中没有,不幸的是我们目前没有Windows开发人员,所以这取决于我.我可以在VisualStudio2010下运行该程序但出现问题,然后当我遇到“active丢失”时:-D我使用了“全部中断”命令,这似乎暂停了我的所有线程。很好,而且大多数堆栈都非常合理。不幸的是,有几个线程(包括我怀疑处于死锁状态的两个线程)没有可用的调用堆栈。我非常清楚我的堆栈的“顶部”不会在那里,因为我没有调试信息,例如ntdll.dll。但我似乎只是从堆栈的中间得到了一点点。我包括了一个不好的堆栈和一

windows - 在 Windows 上加载 .sys 驱动程序的实用程序

有没有我可以用来加载.sys驱动程序的工具。我刚刚从本教程制作了halloworld驱动程序http://www.rohitab.com/discuss/topic/24166-windows-driver-development-tutorial/但我不知道如何加载它。在谷歌上找不到任何东西。 最佳答案 你有两个选择-你有sc.exe正如Harry在他的评论中所说,或者你有OSRLoader,这是我个人使用的。请记住,在WindowsVista/7x64上,您需要使用BCDEdit启用TESTSIGNING(bcdedit-set

c++ - Windows native 开发 : debuggee tries to load werkernel. sys from system32

我现在正在研究WindowsNativeAPI,Nt*/Zw*方法。我下载了WDK,安装它并成功编译了一个应用程序(x64,在Win8.1x64,VS2013下)。它唯一做的就是调用NtOpenFile()。为了成功编译/链接它,我必须对项目属性(驱动程序应用程序模板)进行以下更改:添加来自WDK的包含文件夹从WDK添加Lib文件夹告诉链接器使用ntoskrnl.lib出乎意料的是,在运行调试器时,我收到错误消息“程序无法启动,因为您的计算机缺少C:\Windows\SYSTEM32\werkernel.sys。请尝试重新安装程序以解决此问题。“werkernel.sys显然存在于sy

windows - "Neutral"、 "Neutral(Default)"和 "Neutral(Sys. Default)"之间的区别?

我想将一个应用程序分发到许多不同的国家,所以我必须将多语言字符串嵌入到它的资源中。VisualStudio提供了日文、英文、中文等世界主流语言的列表,但除此之外,还有其他三种选择:"Neutral";"Neutral(Default)";"Neutral(Sys.Default)".它们之间有什么区别? 最佳答案 假设您在这里谈论native资源(托管资源是另一种野兽)中性=LANG_NEUTRAL|SUBLANG_NEUTRAL。FindResourceEx回退到本地线程。见GetThreadLocale中性(默认)=LANG_N

Python 不打印所有 sys.argv

我从sys.argv[1]得到一个列表超出范围的错误,我尝试用这段代码制作一个简单的脚本。importsysprintsys.argv我在cmd上得到这个:C:\...\...\...\py>back.pyexampleargv['C:\\...\\...\\...\\py\\back.py']我不知道为什么我没有得到下一个参数。 最佳答案 这是一个特定于Windows的问题:尝试“pythonback.pyexamplearg”,它会起作用。解决方案(除了不运行Windows!)是更新您的注册表。http://eli.thegre

python - multiprocessing.manager 问题 sys.args

我正在一个多进程的小型Windows服务应用程序中运行以下python代码行。multiprocessing.Manager()问题是在运行Windows服务时,模块sys集中似乎没有属性argv。因此,我在python多处理fork库中发生了以下错误。我希望有人能够阐明这个问题。问题的堆栈跟踪(在Windows服务中运行multiprocessing.Manager时):File"C:\python27\lib\multiprocessing\__init__.py",line99,inManagerm.start()File"C:\python27\lib\multiprocess

windows - srv.sys 如何根据底层文件系统决定原始模式与核心模式?

我们正在使用IFSKit为Windows开发文件系统。我们开始调查一个性能问题,该问题导致我们的文件系统I/O在通过网络共享时变得非常慢。在使用Sysinternals中的FileMon和TCPView查看之后我们发现,如果共享NTFS/FAT,则SMB客户端和服务器以60Kblock传输I/O,而在共享我们的文件系统时,它使用4Kblock。这两个block大小对应于SMB“核心”和“原始”模式-对此进行了解释here由微软。问题是我们无法弄清楚在我们的文件系统中是什么导致Windows共享服务器(srv.sys)为我们的文件系统选择核心模式(4K)而为NTFS和FAT选择原始模式(

python - 为什么我不能将 sys.stdin 中的所有数据写入 Windows 中的文件?

我正在尝试在WindowsXP上使用Python2.7从sys.stdin读取二进制数据。二进制数据是由foobar2000解码的WAV文件。通常,此数据被发送到命令行编码器,例如stdin上的lame.exe,在那里它被处理并写入输出文件,其名称在命令行参数中提供。我试图拦截输出的WAV数据并将其发送到另一个文件。但是,在管道明显崩溃之前,我只能从stdin获得几KB,因此我只剩下一个非常短(大约75KB)的WAV文件,而不是我期望的几十兆字节。这可能是什么原因造成的?我一直小心地将sys.stdin和输出文件作为二进制文件打开。from__future__importprint_f

c# - 我应该在 Debugger.Break 或 Debug.WriteLine 之前检查 Debugger.IsAttached 吗?

我想知道是否应该在调用其他Debug和Debugger函数之前调用if(Debugger.IsAttached)?if(Debugger.IsAttached){Debugger.Break();}对比Debugger.Break()//WithoutcheckingifDebuggerisactuallyattached 最佳答案 这取决于您调用Break()方法的原因。根据documentation:Ifnodebuggerisattached,usersareaskediftheywanttoattachadebugger.如

c# - Parallel.For 和 Break() 的误解?

我正在研究For循环中的并行中断。看完this和this我还有一个问题:我希望这段代码:Parallel.For(0,10,(i,state)=>{Console.WriteLine(i);if(i==5)state.Break();}最多生成6个数字(0..6)。不仅他没有这样做,而且结果长度不同:023514860135420135642非常烦人。(Break(){after5}到底在哪里??)于是我看了一下msdnBreakmaybeusedtocommunicatetotheloopthatnootheriterationsafterthecurrentiterationnee