发布时间:2026-07-21阅读(3)
今天在弄微信扫码支付时,报错了,记录一下解决步骤,因为多个项目都有出现。
System.Security.Cryptography.CryptographicException:系统找不到指定的文件。在System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32hr)在System.Security.Cryptography.X509Certificates.X509Utils._LoadCertFromFile(StringfileName,IntPtrpassword,UInt32dwFlags,BooleanpersistKeySet,SafeCertContextHandle&pCertCtx)在System.Security.Cryptography.X509Certificates.X509Certificate.LoadCertificateFromFile(StringfileName,Objectpassword,X509KeyStorageFlagskeyStorageFlags)在System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(StringfileName,Stringpassword)在WxPayAPI.HttpService.Post(Stringxml,Stringurl,BooleanisUseCert,Int32timeout)
出现这个问题的原因根源是微信商户号证书文件的问题,具体可能出现的原因分析及解决方案:
1、在指定的路径下,没有找到证书
解决方案: 将证书放置到指定证书路径即可。
2、证书没有导入
解决方案:进入证书存放路径,双击证书,按照步骤将证书导入。
3、部署项目的IIS中,项目应用程序池的设置没有开启“加载用户配置文件”的权限
解决方案: 开启“加载用户配置文件”的权限。打开IIS管理器-->应用程序池-->找到你的应用程序-->右键-->高级设置-->在进程模型区域,有个-用户加载配置文件-选择后面为true即可。

Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图