Windows函数错误处理

笔记本Windows10函数不正确?这里有解决方法 函数不正确”错误在Windows10笔记本电脑中是一个比较常见的问题,但通过上述方法,你通常可以解决这个问题。首先尝试使用系统文件检查工具扫描并修复损坏的系统文件,如果无效,再考虑重装系统。同时,注意保持驱动程序和系统更新,以及定期运行病毒扫描和硬件诊断工具,以减少出现此类错误的可能性。希望这篇文章能帮助你解决“函数不正确”的问题,让你的笔记本电脑恢复正常使用。 阅读详情

   当调用一个Windows函数时,它首先要检验传递给它的各个参数的有效性,然后再设法执行任务.如果传递一个无效参数,或者由于某种原因无法执行这项操作,那么操作系统就会返回一个值,指明该函数在某种程度上运行失败了。
   Windows函数常用的返回值类型:
        void
        BOOL:0,非0,TURE,FALSE
        HANDLE:HANDLE,NULL,INVALID_HANDLE_VALID)
        PVOID:NULL,PVOID
        LONG/DWORD:具体函数而定
        ...
   Microsoft编译了一个所有可能的错误代码列表,并且为每个错误代码分配了一个32位的号码. WinError.h头文件(大约2万多行)包含了Micorsoft定义的错误代码列表.
   当一个Windows函数检测到一个错误时,它会使用线程本地存储(thread-local storage)机制,将相应的错误代码号码与调用的线程关联起来.这将使线程能够互相独立的运行,而不会影响各自的错误代码.
   当函数返回时,它的返回值就能指明是否有错误发生,若有且要确定是什么错误,就需要调用DWORD GetLastError()函数,它返回线程的32位错误代码.Visual Studio有一个Error Lookup程序可用将错误代码的号码换成相应文本描述.Windows还提供了一个函数FormatMessage可以将错误代码转换成它的文本描述.
DWORD FormatMessage(
  DWORD dwFlags,      // source and processing options
  LPCVOID lpSource,   // message source
  DWORD dwMessageId,  // message identifier
  DWORD dwLanguageId, // language identifier
  LPTSTR lpBuffer,    // message buffer
  DWORD nSize,        // maximum size of message buffer
  va_list *Arguments  // array of message inserts
);
  我们也可以在自己的函数中使用该机制,只需要使用VOID SetLastError(DWORD dwErrCode)函数即可,如果WinError.h中的任何代码都不能正确地反映该错误的性质,那么可以创建你自己的代码。错误代码的域的划分表:
位        31~30          29              28       27~16          15~0
内容      严重性      Microsoft/客户    保留     设备代码      异常代码

含义      0=成功      0=MS定义的代码   必顺是0   由MS定义       由MS或客户定义
          1=参考
          2=警告      1=客户定义的代码
          3=错误

注:如果创建自己的错误代码,必顺使29位为1

【WIN32之旅】WINDOWS错误处理与参考(一) 讲述WINDOWS平台上错误处理与参考系列文章(一) 阅读详情

相关推荐

【WIN32之旅】WINDOWS错误处理与参考(二)

讲述WINDOWS错误处理与参考的系列文章(二)

Jeffrey Tse 的专栏 7064

解决: C:\Program Files\WindowsApps\.....函数不正确

目录1、问题:C:\Program Files\WindowsApps\E0469640.LenovoUtility_....\utility.exe 函数不正确。2、问题:C:\Program Files\WindowsApps\....\launcherrsxruntime.exe 函数不正确。 1、问题:C:\Program Files\WindowsApps\E0469640.LenovoUtility_…\utility.exe 函数不正确。 解决: 找到 Lenovo HotKeys 打开,然

原来是小雨啊的博客 5万+

C语言调用Windows API:从Beep函数入门系统级编程

系统级编程的核心在于应用程序与操作系统内核的交互,这种交互通常通过应用程序编程接口(API)实现。API作为软件组件间的约定,允许开发者调用操作系统提供的底层服务,而无需关心其内部实现细节。在Windows平台,Win32 API提供了访问系统资源的标准方式,其价值在于为应用程序提供了硬件抽象和系统服务,是实现文件操作、进程管理、设备控制等功能的基础。以C语言调用Windows API为例,开发者通过包含windows.h头文件、链接系统库并遵循特定调用约定,即可实现与系统的直接对话。例如,Beep函数作为

diaoju3333的博客 485

windows远程桌面 身份验证错误:要求的函数不正确等解决办法

win10远程桌面 身份验证错误 windows10系统在安装KB 4093120补丁后导致RDP远程桌面工具出现身份验证错误: 发生了身份验证错误。 提供给函数的令牌无效 发生了身份验证错误。 不支持请求的函数。 这两种情况都是由于CVE-2018-0886 的 CredSSP 更新导致。

MsTiang的博客 8919

易语言数组错误处理模块实战指南

易语言作为一种中文编程语言,它的设计初衷是使编程更加简单易懂,特别是针对汉语母语的开发者。其简洁的语法和丰富的中文命令,极大地降低了编程的门槛,使得那些没有深厚英文基础的用户也能快速上手。内存补丁技术是一种在软件开发中用来解决特定问题的技术。它通常用于在运行时动态修改程序的内存,以便更正错误、提高性能或者改变程序行为。本小节将对内存补丁技术的原理进行深入探讨,并分析其与错误处理之间的紧密联系。ExitThread函数是线程级错误处理的一个重要工具,它允许线程在遇到无法恢复的错误时,能够有序地退出。

weixin_34779181的博客 745

C语言头文件 WINNLS

C语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件 WINNLSC语言头文件

win32bridge.server.exe函数不正确解决方案

解决win32bridge.server.exe函数不正确解决方案!Cortana的问题,已经解决,亲测有效!

你的问题在于,读书太少而想得太多。 2万+

eMMC FFU固件更新实战:从协议解析到设备修复

本文详细解析eMMC FFU固件更新技术,从协议原理到实战操作,涵盖EXT_CSD寄存器操作、命令流状态机解析及专业工具使用指南。通过真实维修案例,展示如何利用FFU机制修复设备故障,并提供高级优化技巧与安全注意事项,是硬件工程师和维修技术人员的实用参考。

weixin_29191761的博客 381

[导入]Windows函数错误处理

文章来源:http://blog.youkuaiyun.com/AttaBoy/archive/2002/01/02/6237.aspx 转载于:https://www.cnblogs.com/zhaoxiaoyang2/archive/2002/01/02/816602.html

weixin_30535043的博客 107

华为CNA VRM搭建(使用vmware worfstartion搭建)

华为CNA和VRM在 vmware workstation安装使用

weixin_70595351的博客 1813

Aspen Plus下载教程Aspen Plus V14 保姆级安装步骤(附安装包)

26、在WlmAdmin界面中,依次点击【Subnet Servers】、【admin】、【Add Feature】、【From a File】、【To Server and its File】。35、在产品选择页面,勾选需要安装的所有产品(重要:不要勾选【Aspen Online(Plant Data)】),然后点击【File Location】。回到桌面,点击任务栏的【开始菜单】,在【所有应用】中找到【Aspen Plus V14】软件图标,将其拖到桌面上创建快捷方式。9、这里可以更改软件的安装位置。

ps_xiaowang的博客 1万+

写一个简单通用的Windows错误处理函数

Windows的错误处理看似简单,但要做好需要考虑到各种细节。安全版本的字符串函数防止缓冲区溢出,细致的字符串清理让显示更美观,完整的错误信息方便调试。这个函数是个不错的模板,可以直接用,也可以根据自己的需要修改。比如可以把错误信息输出到日志文件,或者在某些情况下不用消息框而用其他方式通知用户。写Windows程序,好的错误处理能省去很多调试时间。特别是在客户环境出问题的时候,有详细的错误信息,可能远程就能判断出问题原因。

静下心来,做好每一件事 403

uniapp 记录运动轨迹 开发_智能手环穿戴设备APP开发解决方案

智能手环是一种穿戴式智能设备,是目前备受关注的科技产品。目前智能手环具有的功能有记录日常生活中的运动数据、移动轨迹,定位等,有些还可以进行睡眠质量的检测,并将这些数据传送至移动端如手机、平板等,可对数据进行分析,指导健康生活的作用。而智能手环开发方案就是将这些功能实现,将算法烧录到主控板上。智能手环都有哪些功能  1、记录运动数据  对于喜欢健身的用户来说,智能手环记录的运动数据功能...

weixin_39678493的博客 1764

函数错误处理一(总结自windows编程核心)

/*    Error Handling Part 1    当我们调用Windows函数的时候,函数会验证我们给它传递的参数,如果参数不    正确或由于其它一些原因函数没能正确执行,则函数会以返回值的形式告诉调用    者函数出错了。    常见的返回值:    VOID:        这种函数值说明函数不可能出错,只有极少数的Windows函

孝敬父母需要从现在开始 1227

全志T133-s3(Tina Linux)下RTL8723DS WiFi驱动移植与调试实战

本文详细介绍了在全志T133-s3平台(Tina Linux)上移植RTL8723DS WiFi驱动的完整流程,包括硬件连接、驱动源码获取、内核配置、系统适配、设备树配置以及常见问题排查。通过实战案例,帮助开发者快速解决SDIO接口通信、固件加载、电源管理等关键问题,实现稳定的WiFi功能。

weixin_30505225的博客 507

仿真模型简单介绍

同时,各种以伯克利的Spice仿真程序的算法为核心的商用Spice电路仿真工具也随之产生,运行在PC和UNIX平台,许多都是基于原始的SPICE2G6版的源代码,这是一个公开发表的版本,它们都在Spice的基础上做了很多实用化的工作,比较常见的Spice仿真软件有HSpice、Pspice、Spectre、Tspice、SmartSpcie、IsSpice等,虽然它们的核心算法雷同,但仿真速度、精度和收敛性却不一样,其中以Synopsys公司的Hspice和Cadence公司的Pspice最为著名。...

小幽余生不加糖 8006

Windows API错误处理:GetLastError函数详解与应用

在Windows系统编程中,错误处理是确保软件稳定性的核心技术。通过线程局部存储(TLS)机制,GetLastError函数能够精准捕获API调用产生的错误码,这些32位编码包含错误严重性、来源设备等关键信息。理解错误码的位域结构(如0x00000005表示访问拒绝)是调试的基础,配合FormatMessage函数可将其转换为可读描述。在多线程和文件操作等典型场景中,正确使用错误处理API能显著提升调试效率。本文以Windows平台核心错误处理工具GetLastError为例,深入解析其底层原理,并展示如何

weixin_26938645的博客 353

把 LLM 编排能力塞进 ABAP 系统里,ZLLM 仓库的工程价值与 SAP 落地场景

ZLLM项目将LLM应用开发中的常见工程问题引入ABAP原生环境,为SAP系统提供AI工作流构建能力。它类似ABAP版的LangChain,支持Chain组合、Prompt模板、状态传递等核心功能,强调纯ABAP实现、延迟执行以及与ABAP数据结构的深度集成。项目包含工厂类、LLM客户端、负载均衡器等模块,特别设计了能处理ABAP内表和结构的模板引擎,使业务数据可直接用于Prompt生成。通过Step和Flow机制支持复杂业务过程编排,并采用延迟执行和并行处理优化批量任务性能。该项目为ABAP开发者提供了在

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 61

函数错误处理二(总结自己windows编程核心)

/*    1:定义自己的错误码    微软的错误码返回机制也适用于我们自己写的函数。    为了表示一个错误,通常情况下设置一个线程的最后错误码然后函数再返回一个    不可用值就可以了,比如NULL,FALSE,INVALID_HANDLE_VALUE等任何想返回的值。    设置线程的最后错误码可以使用函数:        VOID SetLastEr

孝敬父母需要从现在开始 637

【报错】open /var/lib/docker/tmp/docker-import-863402796/bin/json: no such file or directory

然后,通过docker images可以看到镜像已经加载进来了。然后,通过docker images可以看到镜像已经加载进来了。

静谧、淡雅 6225

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Windows核心编程 第一章 错误处理

1.常见返回值类型: 返回值类型为VOID型:这种函数不可能失败! 返回值类型为BOOL型:应避免测试返回值是否为TRUE,最稳妥的做法是检查它是否不为FALSE。 返回值为HANDLE型:函数若是失败,返回NULL,HANDLE变量将表示一个可操纵对象。有些函数发生错误将返回INVALID_HANDLE_VALUE。 返回值为类型LONG/DWORD型:较...

aita3844的博客 222

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Windows 错误处理机制

在开发当中难免会出现函数调用失败,一般情况下我们肯定很急切的想知道是什么致使函数调用失败,作为初级程序员的我们一般为了判断自己的函数调用失败的原因都会选择使用很多的if-else函数来实现,但是要是函数当中会有很多执行失败那么if-else会使我们的函数很杂乱。为了解决这种问题Microsoft提供了错误处理机制。    在一个函数调用完之后我们可以运用两个函数:            Ge

vanileo的专栏 3158

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【Windows 核心编程】Windows 核心编程 -- 错误处理

一,常见的Windows函数返回值类型           1)VOID:这个函数不可能失败,极少数Windows函数的返回值类型为VOID。                        VOID ExitProcess(UINT uExitCode);           2)BOOL:如果函数失败,返回值为0;否则,返回值是一个非0值。应避免测试返回值是否为TRUE,应该检查是否

小田的专栏 1704
上一篇: 创造成功的基本前提
下一篇: 控件的WM_NOTIFY消息映射
普通网友
博客等级 码龄22年 1万+粉丝 3156原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值