草庐IT

异常系列

全部标签

c - 创建/删除一系列相同大小的文件后 NTFS 磁盘空间不足

我在处理一个大型项目时遇到了一个非常奇怪的问题。我在一个分区上写了一堆相同大小的文件(尝试了RAM磁盘和通过diskmgmt.msc创建的虚拟磁盘)。当没有足够的可用空间来容纳另一个文件时(如GetDiskFreeSpaceExW所报告),我删除了一个(只有一个)以前创建的文件并写入新文件。然后,我删除另一个旧文件并写入一个新文件,无限循环(因此,您可以将分区视为大小相同的文件的环形缓冲区)。在一系列的写入-删除(从几百到几千)之后,我在写入新文件时遇到了nofreespace错误(在此之前,GetDiskFreeSpaceExW报告足够的空间)。我请我的几位同事尝试在他们的硬件上重现

windows - WiX:在 ProgramFilesFolder 中安装应用程序会引发 AccessDenied 异常。为什么?

我有一个C#应用程序和一个WiX项目,用于将此应用程序安装在ProgramFilesFolder中。我的应用程序有一个使用dll文件的查看器元素。如果我以普通用户权限启动应用程序,我会收到一个错误,并且我的应用程序中的查看器元素不会加载,并显示我的查看器元素无权访问dll文件的错误消息。作为管理员用户,它工作正常。在我的WiX项目中,我设置了属性perMachine并且我在我的应用程序中使用了其他几个dll文件,但我没有收到此类错误。如果我在ProgramFilesFolder之外安装我的应用程序,则没有问题。我应该怎么办?在VS2010中,我可以为每个文件设置BuildAction和

启动应用程序时 C# Windows 服务 COM 异常 80080005

我创建了一个尝试启动应用程序(在本例中为CATIA)的Windows服务。我使用以下代码:privateApplicationGetApplicationObject(stringProgId){ApplicationAppObject=null;//TrytogetallreadyopeninstanceoftheApplicationtry{AppObject=(Application)Marshal.GetActiveObject(ProgId);}catch{//CreateanewinstanceoftheApplicationinsteadAppObject=(Applic

C++/WIndows - 无法捕获异常

我是Windowsapi的初学者,所以这里一定有我不明白的地方。在我的主要功能中,我使用try-catch来捕获所有未捕获的异常,但由于某种原因,我从代码中其他地方抛出的异常从未被捕获。我的应用程序使用单个(主)线程。我是这样扔的:throw"ClassName::methodName()-Errormessage";并在消息循环之外捕获异常:try{while(GetMessage(args...)){TranslateMessage(args...);DispatchMessage(args...);}}catch(constchar*sExc){::MessageBox(args

c# - 捕获 ASP.NET C# 中的所有异常,而不是 `try{} catch{}` block 中的每个方法

有没有更好的方法可以在一个地方捕获所有异常而无需为每个方法编写try{}catch{}? 最佳答案 您可以通过覆盖Global.asax中的Application_Error来捕获应用程序中的异常。但是,使用这种方法,您无法像使用常规trycatchblock那样处理这些异常。你可以记录它voidApplication_Error(objectsender,EventArgse){Exceptionex=Server.GetLastError();//ifthere'sanInnerExceptionwe'llmostlikelyb

c - C 中的 Visual Studio 错误,0xfefefefe 处的未处理异常

我正在学习如何在VisualStudio中编写C,这是我的代码,#includeintmain(){charme[20];printf("Whatisyourname?");scanf_s("%s",me);printf("darngladtomeetyou,%s!\n",me);return(0);}现在,在输入所有内容后,我会弹出一个错误消息“Project14.exe中0xFEFEFEFE处未处理的异常:0xC00001A5:已检测到无效的异常处理程序例程(参数:0x00000003)” 最佳答案 您使用的scanf_s()有

c# - Windows 10 通用应用程序,在访问我的设备信息时抛出 : 'System.UnauthorizedAccessException' in app. exe 异常?

我是Windows应用程序开发和C#的新手。当我尝试从我的应用程序运行此代码时,它说unauthorizedexceptionthrown但是示例“MobileBroadband”应用程序正在我的诺基亚530上顺利执行相同的代码try{varmodem=MobileBroadbandModem.GetDefault();IMEI=modem.DeviceInformation.MobileEquipmentId;MANUF=modem.DeviceInformation.Manufacturer;MODEL=modem.DeviceInformation.Model;Debug.Wri

c - 在 Windows 上处理 fpu 异常

我想在Windows上处理fpu异常,比如:#include#include#includeintmain(){doubleb=0;intraised;feclearexcept(FE_ALL_EXCEPT);b/=0;raised=fetestexcept(FE_OVERFLOW|FE_INVALID);if(raised&FE_OVERFLOW){printf("over\n");}if(raised&FE_INVALID){printf("invalid\n");}return0;}但是在Windows上。我试着阅读MSDN,但文档一点也不清楚。我想在x86和amd64架构上使用

c++ - 防止 Windows 在 native 代码未处理的异常上显示任何对话框

我们的构建服务器为许多不同的C++程序编译和运行测试套件。程序有时会出现错误,并可能崩溃。当它们崩溃时,Windows7总是会抛出这个模态对话框:必须由人点击它,导致构建服务器闲置。有没有办法在系统级别防止这种情况发生?我知道我可以在流程本身内做到这一点,但我希望能够在整个系统中做到这一点。 最佳答案 请参阅“在Windows7中禁用Dr.Watson”http://xheo.com/blog/disabling-dr-watson-in-windows-7 关于c++-防止Window

C 异常处理

我想知道如何在C中处理异常,特别是EXCEPTION_GUARD_PAGE异常。我将尝试更简要地解释一下情况:我想将一个部分/页面部分标记为PAGE_GUARD,每当程序遇到它们时我想执行一些任务,我尝试使用经典的VirtualAlloc引起异常->Write->Exception命中但我知道在C中捕获异常非常感谢您的帮助。提前致谢。 最佳答案 MSDN拥有您需要的一切:UsinganExceptionHandlerThetry-exceptStatement在这种特殊情况下,您需要这样的东西:__try{/*Codethatmay