首页 > 数据库 >关计算机安装 postgreSQL12.21.1 中 initdb.exe 启动报错 0xc0000022 的查错总结

关计算机安装 postgreSQL12.21.1 中 initdb.exe 启动报错 0xc0000022 的查错总结

时间:2024-11-20 10:08:39浏览次数:1  
标签:exe 管理员 DLL 报错 initdb 查错 0xc0000022

问题描述

在安装 postgreSQL12.21.1 时,initdb.exe 无法正常启动,报错信息为应用程序无法启动,错误代码 0xc0000022。

问题排查过程

  1. 初始排查与尝试
    • 由于个人计算机存在早期权限划分遗留问题,此前多个程序(如 PS、Balatro、MySQL 等)出现类似报错,通常以管理员身份打开可解决,但此次 initdb.exe 无效。
  2. 第一次检查
    • 检查同时安装的其他文件,如 clusterdb.exe、createdb.exe 等,发现这些文件在无管理员身份时出现 0xc0000022 报错,以管理员身份打开则无报错。
    • 通过网络排查,找到相关博客(https://blog.csdn.net/u011639103/article/details/128961263),虽不确定 “0xc 开头为 C 语言错误” 的准确性,但推测问题属于动态链接库异常
  3. 第二次尝试
    • 根据 copilot 建议,使用 Dependencies Walker 和 Depnedencies 确定 initdb.exe 在哪些 DLL 上有问题。
    • 扫描出部分异常 DLL,根据报错下载放置在 “Windows\SysWOW64” 中,但未解决问题,且用这两个软件扫描已知正常的.exe 文件也有类似错误提示。
  4. 第三次排查与解决
    • 在其他设备正常安装 pgsql 后,确定问题仅出在个人设备上,从环境角度排查。
    • 下载 DirectX Repair 增强版修复 C++ 库,过程包括两步,因此无法确定是哪一步解决了问题:
      • 先删除多次修复仍报错的 VC redist 2015 - 2022 库(x64 和 x86)并重启,然后使用 DirectX Repair 下载较低版本的 2015 - 2022 库。
      • 在 DirectX Repair 选项中注册所有 DLL 并重启。

问题解决结果

重启后,initdb.exe 成功启动。

总结与思考

0xc0000022 问题多数因动态链接库异常导致,可能是 DLL 文件权限问题,使权限低的软件无法访问,表现为部分程序以管理员身份运行可解决。 此次情况特殊,若读者遇到管理员身份打开仍无法解决的类似问题,希望本查错过程能提供帮助。对于此次解决问题的具体有效步骤,更倾向于 DLL 注册,但不能确定放置在 SysWOW64 中的新 DLL 是否在注册后起到了作用。因此如果有人不幸遇到了类似问题,且注册 DLL 未解决时,可以考虑是否是这个变量影响了结果。以下是我下载的三个 DLL 。

如果有读者可以明确是哪种方式解决了这个问题,欢迎交流,余将不胜感激。

标签:exe,管理员,DLL,报错,initdb,查错,0xc0000022
From: https://www.cnblogs.com/Ultraneuro/p/18556268

相关文章

  • gwupdater.dll 打不开报错,实用修复方法
    gwupdater.dll是电脑文件中的一个dll文件,也即动态链接库文件。这类文件在电脑技术领域中扮演着重要的角色,它们对于Windows操作系统的流畅运行以及众多软件的功能执行至关重要。一旦电脑中的某个dll文件丢失,可能会导致某些软件和游戏等程序无法正常启动运行,并且导致电脑系统弹窗......
  • ProcessPoolExecutor 的使用
    参考:https://blog.csdn.net/u013842501/article/details/117717200fromconcurrent.futuresimportProcessPoolExecutordeftarget_func(args):passreturnansdefinit_func(init_args):passPool=ProcessPoolExecutor(max_workers=3,mp_context=multiproce......
  • 论文HyperEnclave An Open and Cross-platform Trusted Execution Environment学习
    论文原文链接原文都是英文的,先翻译一遍,在翻译的过程中阅读和理解。HyperEnclave:一个开放的跨平台可信执行环境摘要学术界和工业界已经提出了许多可信执行环境(TEEs)。然而,它们中的大多数都需要特定的硬件或固件更改,并且绑定到特定的硬件供应商(如Intel、AMD、ARM和IBM)。在本文中......
  • Abp.VNext-异步执行器AsyncExecuter
    作用方便在应用服务层对IQueryable执行异步操作。代码实现varqueryable=await_ordedrRepository.WithDetailAsync(x=>x.OrderItems);queryable=queryable.WhereIf(inputDto.Guids.Any(),x=>inputDto.GuidIds.Contains(x.Id));varpageQueryable=queryable.OrderBy(......
  • Conda环境Git Pull报错
    问题背景用conda新建了一个python3.9的虚拟环境,经常出现跟动态链接库相关的报错,这次连使用gitpull都出现了一个奇怪的报错:$gitpull/usr/lib/git-core/git-remote-https:symbollookuperror:/lib/x86_64-linux-gnu/libp11-kit.so.0:undefinedsymbol:ffi_type_pointer,......
  • moveit 报错what(): parameter ‘robot_description_planning.joint_limits.Left_Arm_
    使用moveit_setup_assistant配置moveit2包在humble下会出现错误,在config目录下的joint_limit.yamls文件#joint_limits.yamlallowsthedynamicspropertiesspecifiedintheURDFtobeoverwrittenoraugmentedasneeded#Forbeginners,wedownscalevelocitya......
  • NetCore 3.1 大文件上传报错--413 Payload Too Large
    十年河东,十年河西,莫欺少年穷学无止境。,精益求精1、报错信息如下:RequestURL:https://xx.com/webapi/api/ad_video/UploadRequestMethod:POSTStatusCode:413PayloadTooLargeRemoteAddress:106.15.105.219:443ReferrerPolicy:strict-origin-when-cross-origin......
  • 香橙派orangepi-build编译报错,internal compiler error:Illegal instruction
    一、问题    使用比较旧的pc装Ubuntu22来编译香橙派5Plus的内核,过程中遇到编译器崩溃错误:internalcompilererror:Illegalinstruction二、问题分析    chatgpt给出的解答是:似乎和编译的机器以及编译器有关,根据它给出的建议更改源码。以下是我遇......
  • javax.xml.ws.EndPoint报错
    可能的原因,检查下jdk版本,在jdk8>以上版本中,已经弃用该对象。 先安装jdk21,然后再安装jdk1.8,项目中有用到该对象,提示无法正常加载。(前提确保所有jar都正常引入)排查步骤,看下idea开发工具中jdk的配置版本, javax.xml.ws.EndPoint在jdk1.8版本中存在,高版本中不存在。......
  • 读取pom配置报错:org.yaml.snakeyaml.scanner.ScannerException: while scanning for t
    使用场景:项目开发过程中,我们有多种开发环境,使用pom文件统一管理配置,然后使用@xx@读取配置,报错。org.yaml.snakeyaml.scanner.ScannerException:whilescanningforthenexttokenfoundcharacter'@'thatcannotstartanytoken.(Donotuse@forindentation) in......