You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#桌面程序加密app.config:导出RSA密钥容器失败求助

解决RSA密钥容器导出提示“未找到”的问题
  • 先修正最明显的错误:容器名称不匹配
    你生成密钥用的容器名是SampleKeys,但导出命令里写的是TestKey2,这直接导致系统找不到对应容器。把导出命令改成:

    aspnet_regiis -px "SampleKeys" "C:\keys.xml" -pri
    
  • 确认密钥容器的存储级别
    生成命令里的–exp参数(必须是英文短横线,别用中文符号)是创建机器级容器,但如果参数符号错误,可能实际生成的是用户级容器。可以先列出所有机器级容器验证:

    aspnet_regiis -lk
    

    如果SampleKeys不在列表里,说明是用户级容器,导出时要加-user参数:

    aspnet_regiis -px "SampleKeys" "C:\keys.xml" -pri -user
    
  • 必须用管理员权限运行命令行
    操作机器级密钥容器需要管理员权限,右键命令提示符/终端,选“以管理员身份运行”后再执行导出命令。

  • 匹配.NET版本的位数
    如果是64位系统,且你的程序是64位,要使用64位的aspnet_regiis工具,路径是:

    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe
    

    别用32位版本操作64位密钥容器,否则也会找不到。

  • 检查密钥文件的权限
    确认C:\Documents and Settings\All Users\Microsoft\Crypto\RSA\MachineKeys下的密钥文件存在,当前用户有读取权限。权限不够的话,右键文件夹选“属性”-“安全”,添加当前用户并赋予读取权限。

内容的提问来源于stack exchange,提问作者Mohamad Elyasi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 01:01:21