BC包冲突问题

【问题背景】:最近项目要使用高版本的加解密包,老项目使用的JDK1.6,老版本的BC包,加解密算法没有 国密 SM3/SM4,老包BC不能排除,有功能在使用;高版本的BC包才能使用SM3/SM4,同时BC的高低版本,不兼容。

【预习知识】

  • bouncycastle库:提供了很多哈希算法和加密算法的第三方库。它提供了Java标准库没有的一些算法。

【解决思路】

  1. 自定义类加载器:使用类加载机制,加载高版本的BC包;不同类加载器中的BC类,对JVM来说是不同的,可以同时加载。
  2. 当前线程执行时,在使用的地方,使用自定义类加载器加载高版本的BC包,使用SM3/SM4加密算法,执行完成后,还原当前线程的上下文环境,避免对低版本BC包的使用类造成影响。

【坑】

Provider 通过反射class.newInstance() 构建后,会被JceSecurity 静态域持有,导致大量的BouncyCastleProvider实例无法回收,JVM频繁Full GC,最终导致内存溢出。

具体参考:一次项目上内存溢出分析实践(javax.crypto.JceSecurity)_chongkangan6592的博客-CSDN博客

【解决方案】

缓存对象,只创建一次。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WIN XP蓝屏代码大全 一、蓝屏含义 1、故障检查信息 ***STOP 0x0000001E(0xC0000005,0xFDE38AF9,0x0000001,0x7E8B0EB4) KMODE_EXCEPTION_NOT_HANDLED ***其中错误的第一部分是停机码(Stop Code)也就是STOP 0x0000001E, 用于识别已发生错误的类型, 错误第二部分是被括号括起来的四个数字集, 表示随机的开发人员定义的参数(这个参数对于普通用户根本无法理解, 只有驱动程序编写者或者微软操作系统的开发人员才懂). 第三部分是错误名. 信息第一行通常用来识别生产错误的驱动程序或者设备. 这种信息多数很简洁, 但停机码可以作为搜索项在微软知识库和其他技术资料中使用 2.推荐操作 蓝屏第二部分是推荐用户进行的操作信息. 有时, 推荐的操作仅仅是一般性的建议(比如: 到销售商网站查找BIOS的更新等); 有时, 也就是显示一条与当前问题相关的提示. 一般来说, 惟一的建议就是重启. 3.调试端口告诉用户内存转储映像是否写到磁盘商了, 使用内存转储映像可以确定发生问题的性质, 还会告诉用户调试信息是否被传到另一台电脑商, 以及使用了什么端口完成这次通讯. 不过, 这里的信息对于普通用户来说, 没有什么意义.有时保卫科可以顺利的查到是哪个生产小组的问题, 会在第一部分明确报告是哪个文件犯的错, 但常常它也只能查个大概范围, 而无法明确指明问题所在. 由于工厂全面被迫停止, 只有重新整顿开工, 有时, 那个生产小组会意识到错误 , 不再重犯. 但有时仍然会试图哄抢零件, 于是厂领导不得不重复停工决定(不能启动并显示蓝屏信息, 或在进行相同操作时再次出现蓝屏). 二、蓝屏的处理方法 Windows 2K/XP蓝屏信息非常多, 无法在一篇文章中全面讲解, 但他们产生的原因往往集中在不兼容的硬件和驱动程序、有问题的软件、病毒等, 因此首先为大家提供了一些常规的解决方案, 在遇到蓝屏错误时, 应先对照这些方案进行排除. 1.重启 有时只是某个程序或驱动程序一时犯错, 重启后他们会改过自新.(注意:此时参见7.查询停机码) 2.新硬件 首先, 应该检查新硬件是否插牢, 这个被许多人忽视的问题往往会引发许多莫名其妙的故障. 如果确认没有问题, 将其拔下, 然后换个插槽试试, 并安装最新的驱动程序. 同时还应对照微软网站的硬件兼容类别检查一下硬件是否与操作系统兼容. 如果你的硬件没有在表中, 那么就得到硬件厂商网站进行查询, 或者拨打他们的咨询电话. Windows XP的硬件兼容列表 Windows 2K的硬件兼容类别 3.新驱动和新服务 如果刚安装完某个硬件的新驱动, 或安装了某个软件, 而它又在系统服务中添加了相应项目(比如:杀毒软件、CPU降温软件、防火墙软件等), 在重启或使用中出现了蓝屏故障, 请到安全模式来卸载或禁用它们. 4.检查病毒 比如冲击波和振荡波等病毒有时会导致Windows蓝屏死机, 因此查杀病毒必不可少. 同时一些木马间谍软件也会引发蓝屏, 所以最好再用相关工具进行扫描检查. 5.检查BIOS和硬件兼容性 对于新装的电脑经常出现蓝屏问题, 应该检查并升级BIOS到最新版本, 同时关闭其中的内存相关项, 比如:缓存和映射. 另外, 还应该对照微软的硬件兼容列表检查自己的硬件. 还有就是, 如果主板BIOS无法支持大容量硬盘也会导致蓝屏, 需要对其进行升级. 小提示: BIOS的缓存和映射项 Video BIOS Shadowing (视频BIOS映射) Shadowing address ranges(映射地址列) System BIOS Cacheable(系统BIOS缓冲) Video BIOS Cacheable(视频BIOS缓冲) Video RAM Cacheable(视频内存缓冲) 6.检查系统日志 在开始-->菜单中输入:EventVwr.msc, 回车出现"事件查看器", 注意检查其中的"系统日志"和"应用程序日志"中表明"错误"的项. 7.查询停机码 把蓝屏中密密麻麻的E文记下来, 接着到其他电脑中上网, 进入微软帮助与支持网站http://support.microsoft.com?, 在左上角的"搜索(知识库)"中输入停机码, 如果搜索结果没有适合信息, 可以选择"英文知识库"在搜索一遍. 一般情况下, 会在这里找到有用的解决案例. 另外, 在baidu、Google等搜索引擎中使用蓝屏的停机码或者后面的说明文字为关键词搜索, 往往也会有以外的收获. 8.最后一次正确配置 一般情况下, 蓝屏都出现于更新了硬件驱动或新加硬件并安装其驱动后, 这时Windows 2K/XP提供的"最后一次正确配置"就是解决蓝屏的快捷方式. 重启系统, 在出现启动菜单时按下F8键就会出现高级启动选项菜单, 接着选择"最后一次正确配置". 9.安装最新的系统补丁和Service Pack 有些蓝屏是Windows本身存在缺陷造成的, 应此可通过安装最新的系统补丁和Service Pack来解决. 三、蓝屏代码含义和解决方案 1、0x0000000A:IRQL_NOT_LESS_OR_EQUAL ◆错误分析:主要是由问题的驱动程序、有缺陷或不兼容的硬件与软件造成的. 从技术角度讲. 表明在内核模式中存在以太高的进程内部请求级别(IRQL)访问其没有权限访问的内存地址. ◇解决方案:请用前面介绍的解决方案中的2、3、5、8、9方案尝试排除. 2、0x00000012:TRAP_CAUSE_UNKNOWN ◆错误分析:如果遇到这个错误信息, 那么很不幸, 应为KeBudCheck分析的结果是错误原因 未知. ◇解决方案:既然微软都帮不上忙, 就得靠自己了, 请仔细回想这个错误是什么时候出现的; 第一次发生时你对系统做了哪些操作; 发生时正在进行什么操作. 从这些信息中找出可能的原因, 从而选择相应解决方案尝试排除. 3、0x0000001A:MEMORY_MANAGEMENT ◆错误分析:这个内存管理错误往往是由硬件引起的, 比如: 新安装的硬件、内存本身有问题等. ◇解决方案:如果是在安装Windows时出现, 有可能是由于你的电脑达不到安装Windows的最小内存和磁盘要求. 4、0x0000001E:KMODE_EXCEPTION_NOT_HANDLED ◆错误分析:Windows内核检查到一个非法或者未知的进程指令, 这个停机码一般是由问题的内存或是与前面0x0000000A相似的原因造成的. ◇解决方案: (1)硬件兼容有问题:请对照前面提到的最新硬件兼容性列表, 查看所有硬件是否含在该列表中. (2)有问题的设备驱动、系统服务或内存冲突和中断冲突: 如果在蓝屏信息中出现了驱动程序的名字, 请试着在安装模式或者故障恢复控制台中禁用或删除驱动程序, 并禁用所有刚安装的驱动和软件. 如果错误出现在系统启动过程中, 请进入安全模式, 将蓝屏信息中所标明的文件重命名或者删除. (3)如果错误信息中明确指出Win32K.sys: 很有可能是第三方远程控制软件造成的, 需要从故障恢复控制台中将对该软件的服务关闭. (4)在安装Windows后第一次重启时出现:最大嫌疑可能时系统分区的磁盘空间不足或BIOS兼容有问题. (5)如果是在关闭某个软件时出现的:很有可能时软件本省存在设计缺陷, 请升级或卸载它. 5、0x00000023:FAT_FILE_SYSTEM 0x00000024:NTFS_FILE_SYSTEM ◆错误分析:0x00000023通常发生在读写FAT16或者FAT32文件系统的系统分区时, 而 0x00000024则是由于NTFS.sys文件出现错误(这个驱动文件的作用是容许系统读写使用 NTFS文件系统的磁盘). 这两个蓝屏错误很有可能是磁盘本身存在物理损坏, 或是中断要求封(IRP)损坏而导致的. 其他原因还括:硬盘磁盘碎片过多; 文件读写操作过于频繁, 并且数据量非常达或者是由于一些磁盘镜像软件或杀毒软件引起的. ◇解决方案: 第一步:首先打开命令行提示符, 运行"Chkdsk /r"(注:不是CHKDISK, 感觉象这个, 但是……)命令检查并修复硬盘错误, 如果报告存在怀道(Bad Track), 请使用硬盘厂商提供的检查工具进行检查和修复. 第二步:接着禁用所有即使扫描文件的软件, 比如:杀毒软件、防火墙或备份工具. 第三步:右击C:\winnt\system32\drivers\fastfat.sys文件并选择"属性", 查看其版本是否与当前系统所使用的Windows版本相符.(注:如果是XP, 应该是C:\windows\system32 \drivers\fastfat.sys) 第四步:安装最新的主板驱动程序, 特别IDE驱动. 如果你的光驱、可移动存储器也提供有驱动程序, 最好将它们升级至最新版. 6、0x00000027:RDR_FILE_SYSTEM ◆错误分析:这个错误产生的原因很难判断, 不过Windows内存管理出了问题很可能会导致这个停机码的出现. ◇解决方案:如果是内存管理的缘故, 通常增加内存会解决问题. 7、0x0000002EATA_BUS_ERROR ◆错误分析:系统内存存储器奇偶校验产生错误, 通常是因为有缺陷的内存(括物理内存、二级缓存或者显卡显存)时设备驱动程序访问不存在的内存地址等原因引起的. 另外, 硬盘被病毒或者其他问题所损伤, 以出现这个停机码. ◇解决方案: (1)检查病毒 (2)使用"chkdsk /r"命令检查所有磁盘分区. (3)用Memtest86等内存测试软件检查内存. (4)检查硬件是否正确安装, 比如:是否牢固、金手指是否有污渍. 8、0x00000035:NO_MORE_IRP_STACK_LOCATIONS ◆错误分析:从字面上理解, 应该时驱动程序或某些软件出现堆栈问题. 其实这个故障的真正原因应该时驱动程序本省存在问题, 或是内存有质量问题. ◇解决方案:请使用前面介绍的常规解决方案中与驱动程序和内存相关的方案进行排除. 9、0x0000003F:NO_MORE_SYSTEM_PTES ◆错误分析:一个与系统内存管理相关的错误, 比如:由于执行了大量的输入/输出操作, 造成内存管理出现问题: 有缺陷的驱动程序不正确地使用内存资源; 某个应用程序(比如:备份软件)被分配了大量的内核内存等. ◇解决方案:卸载所有最新安装的软件(特别是哪些增强磁盘性能的应用程序和杀毒软件)和驱动程序. 10、0x00000044:MULTIPLE_IRP_COMPLIETE_REQUESTS ◆错误分析:通常是由硬件驱动程序引起的. ◇解决方案:卸载最近安装的驱动程序. 这个故障很少出现, 目前已经知道的是, 在使用 www.in-system.com/这家公司的某些软件时会出现, 其中的罪魁就是Falstaff.sys文件.(作者难道不怕吃官司嘛, 把公司网址公布) 11、0x00000050: PAGE_FAULT_IN_NONPAGED+AREA ◆错误分析:有问题的内存(括屋里内存、二级缓存、显存)、不兼容的软件(主要是远程控制和杀毒软件)、损坏的NTFS卷以及有问题的硬件(比如: PCI插卡本身已损坏)等都会引发这个错误. ◇解决方案:请使用前面介绍的常规解决方案中与内存、软件、硬件、硬盘等相关的方案进 行排除. 12、0x00000051:REGISTRY_ERROR ◆错误分析:这个停机码说明注册表或系统配置管理器出现错误, 由于硬盘本身有物理损坏或文件系统存在问题, 从而造成在读取注册文件时出现输入/输出错误. ◇解决方案:使用"chkdsk /r"检查并修复磁盘错误. 13、0x00000058:FTDISK_INTERNAL_ERROR ◆错误分析:说明在容错集的主驱动发生错误. ◇解决方案:首先尝试重启电脑看是否能解决问题, 如果不行, 则尝试"最后一次正确配置"进行解决. 14、0x0000005E:CRITICAL_SERVICE_FAILED ◆错误分析:某个非常重要的系统服务启动识别造成的. ◇解决方案:如果是在安装了某个新硬件后出新的, 可以先移除该硬件, 并通过网上列表检查它是否与Windows 2K/XP兼容, 接着启动电脑, 如果蓝屏还是出现, 请使用"最后一次正确配置"来启动Windows, 如果这样还是失败, 建议进行修复安装或是重装. 15、0x0000006F:SESSION3_INITIALIZATION-FAILED ◆错误分析:这个错误通常出现在Windows启动时, 一般是由有问题的驱动程序或损坏的系统文件引起的. ◇解决方案:建议使用Windows安装光盘对系统进行修复安装. 16、0x00000076ROCESS_HAS_LOCKED_PAGES ◆错误分析:通常是因为某个驱动程序在完成了一次输入/输出操作后, 没有正确释放所占有的内存 ◇解决方案: 第一步:点击开始-->运行:regedt32, 找到[HKLM\SYSTEM\Currentcontrol set\control\session manager\memory management], 在右侧新建双字节值"TrackLockedPages", 值为1. 这样Windows便会在错误再次出现时跟踪到是哪个驱动程序的问题.第二步:如果再次出现蓝屏, 那么错误信息会变成:STOP:0x0000000CB(0xY,0xY,0xY,0xY)DRIVER_LEFT_LOCKED_PAGES_IN_PROCESS其中第四个"0xY"会显示为问题驱动程序的名字, 接着对其进行更新或删除.第三步:进入注册表, 删除添加的"TrackLockedPages". 17、0x00000077:KERNEL_STACK_INPAGE_ERROR ◆错误分析:说明需要使用的内核数据没有在虚拟内存或物理内存中找到. 这个错误常常于是着磁盘有问题, 相应数据损坏或受到病毒侵蚀. ◇解决方案:使用杀毒软件扫描系统; 使用"chkdsk /r"命令检查并修复磁盘错误, 如不行则使用磁盘厂商提供的工具检查修复. 18、0x0000007A:KERNEL_DATA_INPAGE_ERROR ◆错误分析:这个错误往往是虚拟内存中的内核数据无法读入内存造成的. 原因可能是虚拟内存页面文件中存在坏簇、病毒、磁盘控制器出错、内存有问题. ◇解决方案:首先用升级为最新病毒库杀毒软件查杀病毒, 如果促无信息中还0xC000009C 或0xC000016A代码, 那么表示是坏簇造成的, 并且系统的磁盘检测工具无法自动修复, 这时要进入"故障恢复控制台", 用"chkdsk /r"命令进行手动修复. 19、0x0000007B:INACESSIBLE_BOOT_DEVICE ◆错误分析:Windows在启动过程中无法访问系统分区或启动卷. 一般发生在更换主板后第一次启动时, 主要是因为新主板和旧主板的IDE控制器使用了不同芯片组造成的. 有时也可能是病毒或硬盘损伤所引起的. ◇解决方案:一般只要用安装光盘启动电脑, 然后执行修复安装即可解决问题. 对于病毒则可使用DOS版的杀毒软件进行查杀(主战有kv2005DOS版下载). 如果是硬盘本身存在问题, 请将其安装到其他电脑中, 然后使用"chkdsk /r"来检查并修复磁盘错误. 20、0x0000007E:SYSTEM_THREAD_EXCEPTION_NOT_HANDLED ◆错误分析:系统进程产生错误, 但Windows错误处理器无法捕获. 其产生原因很多, 括:硬件兼容性、有问题的驱动程序或系统服务、 或者是某些软件. ◇解决方案:请使用"事件查看器"来获取更多的信息, 从中发现错误根源.(发现好像不是解决哦, 看来这里大家要自力更生了!) 21、0x0000007F:UNEXPECTED_KERNEL_MOED_TRAP ◆错误分析:一般是由于有问题的硬件(比如:内存)或某些软件引起的. 有时超频也会产生这个错误. ◇解决方案:用检测软件(比如:Memtest86)检查内存, 如果进行了超频, 请取消超频. 将PCI硬件插卡从主板插槽拔下来, 或更换插槽. 另外, 有些主板(比如:nForce2主板)在进行超频后, 南桥芯片过热也会导致蓝屏, 此时为该芯片单独增加散热片往往可以有效解决问题. 22、0x00000080:NMI_HARDWARE_FAILURE ◆错误分析:通常是有硬件引起的.(似乎蓝屏与硬件错误有不解之缘) ◇解决方案:如果最近安装了新硬件, 请将其移除, 然后试试更换插槽和安装最新的驱动程序, 如果升级了驱动程序, 请恢复后原来的版本; 检查内存金手指是否有污染和损坏; 扫描病毒; 运行"chkdsk /r"检查并修复磁盘错误; 检查所有硬件插卡已经插牢. 如果以上尝试都无效果, 就得找专业的电脑维修公司请求帮助了. 23、0x0000008E:KERNEL_MODE_EXCEPTION_NOT_HANDLED ◆错误分析:内核级应用程序产生了错误, 但Windows错误处理器没有捕获. 通常是硬件兼容性错误. ◇解决方案:升级驱动程序或升级BIOS. 24、0x0000009C:MACHINE_CHECK_EXCEPTION ◆错误分析:通常是硬件引起的. 一般是因为超频或是硬件存在问题(内存、CPU、总线、电 源). ◇解决方案:如果进行了超频, 请降会CPU原来频率, 检查硬件. 25、0x0000009FRIVER_POWER_STATE_FAILURE ◆错误分析:往往与电源有关系, 常常发生在与电源相关的操作, 比如:关机、待机或休睡. ◇解决方案:重装系统, 如果不能解决, 请更换电源. 26、0x000000A5:ACPI_BIOS_ERROR ◆错误分析:通常是因为主板BIOS不能全面支持ACPI规范. ◇解决方案:如果没有相应BIOS升级, 那么可在安装Windows 2K/XP时, 当出现"press F6 if you need to install a third-party SCSI or RAID driver"提示时, 按下F7键, 这样Windows便会自动禁止安装ACPI HAL, 而安装 Standard PC HAL. 27、0x000000B4:VIDEO_DRIVER_INIT_FAILURE ◆错误分析:这个停止信息表示Windows因为不能启动显卡驱动, 从而无法进入图形界面. 通常是显卡的问题, 或者是存在与显卡的硬件冲突(比如:与并行或串行端口冲突). ◇解决方案:进入安全模式查看问题是否解决, 如果可以, 请升级最新的显卡驱动程序, 如果还不行, 则很可能是显卡与并行端口存在冲突, 需要在安全模式按下WIN+break组合键打开"系统属性", 在硬件-->设备管理器中找到并双击连接打印的LPT1端口的项, 在"资源"选项卡中取消"使用自动配置"的构选, 然后将"输入/输出范围"的"03BC"改为"0378". 28、0x000000BE:ATTEMPTED_WRITE_TO_READONLY_MEMORY ◆错误分析:某个驱动程序试图向只读内存写入数据造成的. 通常是在安装了新的驱动程序, 系统服务或升级了设备的固件程序后. ◇解决方案:如果在错误信息中含有驱动程序或者服务文件名称, 请根据这个信息将新安装的驱动程序或软件卸载或禁用. 29、0x000000C2:BAD_POOL_CALLER ◆错误分析:一个内核层的进程或驱动程序错误地试图进入内存操作. 通常是驱动程序或存在BUG的软件造成的. ◇解决方案:请参考前面介绍的常规解决方案相关项目进行排除. 30、0x000000CERIVER_UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATIONS ◆错误分析:通常是由有问题的驱动程序或系统服务造成的. ◇解决方案:请参考前面介绍的常规解决方案相关项目进行排除. 31、0x000000D1RIVER_IRQL_NOT_LESS_OR_EQUAL ◆错误分析:通常是由有问题的驱动程序引起的(比如罗技鼠标的Logitech MouseWare 9.10和9.24版驱动程序会引发这个故障). 同时,有缺陷的内存、 损坏的虚拟内存文件、 某些软件(比如多媒体软件、杀毒软件、备份软件、DVD播放软件)等也会导致这个错误. ◇解决方案:检查最新安装或升级的驱动程序(如果蓝屏中出现"acpi.sys"等类似文件名, 可以非常肯定时驱动程序问题)和软件; 测试内存是否存在问题; 进入"故障恢复控制台", 转到虚拟内存页面文件Pagefile.sys所在分区, 执行"del pagefile.sys"命令, 将页面文件删除; 然后在页面文件所在分区执行"chkdsk /r"命令;进入Windows后重新设置虚拟内存.如果在上网时遇到这个蓝屏, 而你恰恰又在进行大量的数据下载和上传(比如:网络游戏、BT下载), 那么应该是网卡驱动的问题, 需要升级其驱动程序. 32、0x000000EA:THREAD_STUCK_IN_DEVICE_DRIVER ◆错误分析:通常是由显卡或显卡驱动程序引发的. ◇解决方案:先升级最新的显卡驱动, 如果不行, 则需要更换显卡测试故障是否依然发生. 33、0x000000ED:UNMOUNTABLE_BOOT_VOLUME ◆错误分析:一般是由于磁盘存在错误导致的, 有时也建议检查硬盘连线是否接触不良, 或是没有使用合乎该硬盘传输规格的连接线, 例如ATA-100仍使用ATA-33的连接线, 对低速硬盘无所谓, 但告诉硬盘(支持ATA-66以上)的要求较严格, 规格不对的连线有时也会引起这类没办法开机的故障. 如果在修复后, 还是经常出现这个错误, 很可能是硬盘损坏的前兆. ◇解决方案:一般情况下, 重启会解决问题, 不管怎么样都建议执行"chkdsk /r"命令来检查修复硬盘 34、0x000000F2:HARDWARE)INTERRUPT_STORM ◆错误分析:内核层检查到系统出现中断风暴, 比如:某个设备在完成操作后没有释放所占用 的中断. 通常这是由缺陷的驱动程序造成的. ◇解决方案:升级或卸载最新安装的硬件驱动程序. 35、0x00000135:UNABLE_TO_LOCATE_DLL ◆错误分析:通常表示某个文件丢失或已经损坏, 或者是注册表出现错误. ◇解决方案:如果是文件丢失或损坏, 在蓝屏信息中通常会显示相应的文件名, 你可以通过网络或是其他电脑找到相应的文件, 并将其复制到系统文件夹下的SYSTEM32子文件夹中. 如果没有显示文件名, 那就很有可能是注册表损坏, 请利用系统还原或是以前的注册表备份进行恢复. 36、0x0000021A:STATUS_SYSTEM_PROCESS_TERMINATED ◆错误分析:用户模式子系统, 例如Winlogon或客服服务运行时子系统(CSRSS)已损坏, 所以无法再保证安全性, 导致系统无法启动. 有时, 当系统管理员错误地修改了用户帐号权限, 导致其无法访问系统文件和文件夹. ◇解决方案:使用"最后一次正确的配置", 如果无效, 可使用安装光盘进行修复安装. 37、STOP 0xC0000221 or STATUS_IMAGE_CHECKSUM_MISMATCH ◆错误分析:通常是由于驱动程序或系统DLL文件损坏造成的. 一般情况下, 在蓝屏中会出现 文件名称 ◇解决方案: (1)使用Windows安装光盘进行修复安装; (2)如果还能进入安全模式, 可以"开始-->运行": sfc /scannow (3)还可以采用提取文件的方法来解决, 进入"故障恢复控制台", 使用copy或expand命令从光盘中复制或解压受损的文件. 不过, 蓝屏一般都是驱动程序文件的问题, 所以expand命令会用的都一些, 比如:蓝屏中提示tdi.sys文件, 因为驱动文件一般在i386\driver压缩里, 所以使用: expand
25312 提高了面板的打开速度,例如“属性”和“视图配置”面板。 26036 修改了引脚映射器中的数据列排序,以匹配网络名称和引脚编号顺序。 26554 修复了按组件容差排序后,Explorer面板中显示错误组件参数的问题。 26927 改进了滚动条的UI动作(在面板,网格,对话框中),使它们更易于使用。 27405 修复了访问多维数组时出现“变量或安全数组索引超出范围”错误消​​息的问题。 27113 修复了在删除VCS Provider-GIT服务时尝试检出时引发异常的问题BC:9551)。 27906 修复了以下问题:“属性”面板中的修改字段值(在SCHDOC或SCHLIB上编辑对象时),如果当前所选项目已更改为另一个项目,或取消选择(BC:9641)。 27975 改善了多板装配中板组件和外部零件之间的移动和锁定行为。 28216 修复了.PrjPCB文件中克隆变体复制UniqueID导致具有相同足迹的备用零件的无限ECO循环参数的错误。 28304 更新登录下拉菜单UI以提供所有可用的托管内容服务器。 28482 减少和优化系统注册表的查询数量(BC:9106)。 28582 更新了“打开项目”对话框,从文件浏览器到对话框,以访问所有项目源,括托管项目。 28907 添加了新的“创建项目”对话框,简化了项目目标位置和应用模板的选择。 29828 修复了导致对关联服务器进行多次重新连接尝试的无效会话ID错误。 29880 名称Design Workspace已更改为Project Group,以避免与新的云工作区混淆。已保存的项目组保留了* .DsnWrk文件扩展名。 数据管理 21617 修改了ActiveBOM中的“过滤器编辑器”对话框UI。 22430 添加了在组件编辑器,资源管理器和ActiveBOM中为托管组件设置制造商零件选择排名的功能。 22653 将供应商部件号和制造商部件号的检索更改为批处理模式,以防止与BOM报告,SchLib编辑器和带有活动物料清单的OutJob中的顺序单个数据请求相关的延迟。 22982 修复了“数据管理 - 首选项的服务器”页面中的问题,该页面在未进行任何更改时标记为已修改。 23120 恢复了“发布文档到”功能,以便从Explorer面板发布已发布的文档。 23348 在BOM报告中实施BOM文档过滤器选项。 23824 导入排名功能现在支持手动解决方案。将组件的手动解决方案从一个项目BOM导入另一个项目。 23999 修复了项目属性的变化未传递到BOM输出的问题BC:9580 ; 7072)。 24029 向云组件数据添加了新的“供应商装”参数,以区分制造商的“装”参数(BC:8063 ; BC:8986)。 24443 解决了BOM过滤选项在设计项数量增加或减少后发生变化的问题BC:5572)。 24619 在BOM报告和BOM集中引入了对ActiveBOM过滤器选项的支持。 24832 修复了在“首选项”中更改“部件提供者”位置时,BOM文档中的“部件供应商”未动态更新的问题。 24844 添加了在ActiveBOM中直接更改组件源(设计项)的功能,如在项目管理器中。 24876 为ActiveBOM解决方案添加了新的创建/编辑制造商链接功能(BC:9437)。 25271 添加了在未安装MS Office时以xls / xlsx格式导出BOM的功能(BC:4646)。 25441 修复了PCB 3D打印输出的打印预览为空白的问题。 25760 使用ActiveBOM文档时,粘贴功能已得到改进,并且至少选择了一个目标单元格。 25801 修复了无法在“存储”面板(BC:8643)中成功重命名设计文件的问题。 26014 修复了SVN连接错误问题,其中在重新启动软件后无法提交创建的SVN v1.9文件存储库。 26111 解决了当PC屏幕缩放设置为125%时,“项目发布选项”对话框中无法显示大量列出的OutJobs的问题。 26133 在Explorer面板中搜索受管组件时,“Resistor”部件类型的已还原过滤器选项。 26267 已解决BOM报告中指定参数类型优先级的问题。 26496 尝试从单组件编辑器编辑特定组件占用空间时出现已解决的异常错误。 26699 已解决的问题,其中Vault 3.0中的现有部件请求未显示在“资源管理器”面板中。 26967 解决了Project Releaser的问题,如果任何参数之间的唯一区别是存在特殊字符(_,&,\等),则发布会产生“相同的密钥”错误。 27026 修复了组件的符号和占用空间之间的区分大小写的问题。将组件释放到服务器时,引脚名称会导致多个错误。 27048 将供应商装数据添加到制造商零件搜索UI作为详细信息部分中的参数条目(BC:8986 ; BC:8063)。 27064 已解决的问题,如果在组件值参数中使用了希腊字符,则BomDoc行号为空。 27268 修复了“属性”面板中的错误,该错误导致NEXUS Server托管组件的“无法在可用库中找到组件”错误,该组件也损坏了引用。 27404 修复了从服务器更新组件数据时由于过多的数据请求导致的ActiveBOM延迟问题。 27535 修复了BOM报表中组件的供应商链接顺序与该组件的供应商链接参数的实际顺序(BC:9691)不匹配的问题。 27714 修复了BOM报告问题,其中“含服务器参数”功能将不同的供应商返回到组件“属性”中指定的供应商。 27959 修复了目标SVNDbLib缓存文件夹路径缺少导致SVN进程失败的'\'字符的回归。 28081 修复了在准备数据期间发生的项目发布器中的“在000000010DA15E92处发生了一个或多个错误”的错误。 28291 BOM报告首选项中添加了“在消息面板中报告BOM违规”选项。 28443 将“带有ActiveBOM文档的BOM检查”项添加到“验证输出”菜单中。 28448 “缓存文件夹”选项已添加到“首选项”对话框的“数据管理 - SVN库”页面(BC:1195)。 29089 Altium Infrastructure Server Packager现在可以正确使用部署的更新首选项。 29090 安装期间不再需要Altium Infrastructure Server部署BC:8488)。 29809 固定组件面板错误,在执行基于文件的库搜索后无法重新打开所选组件类别。 进口商/出口商 17619 修复了导致P-CAD导入导出错误和PCAD16LD.DLL访问冲突的错误。 24746 修复了导入xDxDesigner项目时未正确转换总线的问题。 25221 更新了xDxDesigner导入器,改进了层和连接的解释以及Net Labels的对齐。 25427 DXF导入现在可以正确支持样条线对象并创建相应的多边形对象。 25959 解决了导入xDX Designer项目时未转换某些组件的问题。 27588 修复了在使用多部件组件导入特定xDxDesigner设计期间发生“访问冲突”的问题。 28014 修复了远征导入器中的一个错误,其中仅为特定项目导入了顶层和底层。 28735 P-CAD Importer现在可以正确导入连接和端口(BC:9577)。 29014 改进的Eagle进口商,括许多修复; 分层块,板轮廓,图层分配和对象形状。 28067 在字符串对象中使用多行文本时,生成IPC-2581输出不再导致访问冲突BC:10407)。 30293 添加了新扩展 - Ansys EDB Exporter。安装后,使用File> Export> Ansys EDB在PCB Editor中访问。 起草者 15059 添加了新的Board Region View对象,以显示Draftsman文档中的板堆叠区域。 16063 在Draftsman自定义表(BC:7698)中添加了对特殊字符串的支持。 18439 向Draftsman添加了板3D逼真3D视图对象(BC:6991)。 18441 添加了绑定到圆弧和圆弧中心的Draftsman Center Mark对象(BC:9029)。 18756 修复了刚度Flex设计在等轴测视图和具有真几何的Board装配视图中显示不正确的问题。 22669 改进了Dimension对象点的捕捉行为。 24616 修复了(特定用户的设计)导出到PDF (BC:9184)后出现“绘图员文档已过期”的冗余警告消息的问题。 25766 添加了在Draftsman Board Assembly和Fabrication视图中选择显示的图层叠加层的功能。(BC:6910 ; BC:7716)。 25779 在Draftsman中添加了新的传输线结构表对象,该对象填充了来自层堆栈管理器的阻抗计算数据。 25784 添加了绘图符号对象,用于表示焊接和粘合点。 25785 改进了在Draftsman中添加文本的过程,只需单击鼠标即可在默认文本框中添加默认文本。 25786 为Draftsman添加了新类型的Sheet Number参数,允许GOST兼容的纸张编号。 26114 修复了移动或调整大小的Draftsman图形对象可以折叠为单行的问题BC:9471)。 26164 修复了由PCB库更新引起的PCB中3D体位置的变化未更新到Draftsman中的电路板视图的问题。 26266 修复了在单击表格单元格时,Space Navigator无法放大Draftsman文档的问题。 26443 修复了一个问题,即在重命名相关的PCB文档后,Draftsman会崩溃。 26542 修复了回归,其中未选择丝网印刷图形的组件的装配视图中缺少阴影线(BC:9416)。 26867 修复了回归,其中没有显示缺少3D体的Not Fitted组件的阴影线。 26934 解决了从OutJob生成PDF输出时性能下降的问题。 27359 修复了在特定用户设计的装配视图中显示某些未装配的组件的错误(BC:9416)。 27601 修复因PCB上的重复指示符导致长时间挂起的错误(BC:9203 ; BC:9632)。 27694 添加了在放置后移动Draftsman Callouts和Dimensions的起点(目标)点的能力(BC:7740)。 27699 修复了重新打开文档时,绘图员图层堆栈图例中的填充图案将恢复为其默认设置的问题BC:9756)。 27854 修复了Draftsman bug,其中Variants未应用于输出作业生成的等轴测视图。 28416 在3D模型存在潜在错误的情况下(BC:9944)改进了Draftsman Assembly View的显示。 28803 径向尺寸现在可以在Draftsman中正确复制/粘贴(BC:9969)。 29424 修复了使用自定义视图选项时Draftsman Realistic View和Outjob PCB 3D Print的3D相机捕捉定位不一致的问题。 29443 修复了在PCB编辑器(BC:9857)中工作时自动保存备份崩溃绘图员的问题。 29463 添加了Draftsman支持,以在Board Assembly View中显示Flex区域拓扑。 30087 Draftsman的“更新板”命令已更改为“从[PCB文档]导入更改”以更好地描述其功能。 多板 21572 修复了Space Navigator中MbaDoc中3D运动与PcbDoc不一致的问题。 23734 修复了拆分Multi-Board Schematic的信号Entry (BC:9406)时“输入字符串格式不正确”的错误。 24498 修复了在尝试拆分多板原理图模块条目(BC:9406)时抛出“输入字符串格式不正确”错误的问题。 28431 在多板设计中增加了对3D鼠标的支持 - 缩放/平移/旋转。 28432 添加了对以STEP和Parasolid X_T格式导出多板装配的支持。 28433 多板组件现在支持并显示刚挠结构设计的最终折叠状态。 概要 23846 修复了“属性”面板“参数”列表(BC:9153)中无法使用剪切/复制/粘贴的问题。 24226 修复了在“属性”面板中按“更新” (BC:9637)时未更新原理图库组件的名称/ URL链接(除非使用“输入”或“焦点更改” )的问题。 25412 修复了使用暂停的交互式进程关闭原理图文档时发生的“地址访问冲突”错误。 25459 在对具有大量供应商链接的原理图库进行参数更改后执行ECO时,解决了非常慢的响应。 25864 修复了Port对象的“属性”面板中的“名称”字段未提供所有现有端口名称的下拉列表的问题。 27672 修复了原理图文本框架对象的问题,当通过“属性”面板进行编辑时,从外部编辑器粘贴文本时,选项卡将替换为空格(BC:9663)。 27900 修复了在编译后将组件放置在原理图表上变得缓慢的问题。 28442 现在,使用“属性”面板同时编辑多个原理图中的多个对象,可以正确地将所有工作表标记为已修改(BC:9236)。 28446 在原理图首选项(默认值)(BC:10072)中启用“覆盖库原语”选项时,不再覆盖原理图组件(指示符或注释)值。 28539 “属性”面板的“组件”模式现在在“参数”选项卡上含“规则”部分,允许在原理图上指定组件类型设计规则(BC:9445 ; BC:8903)。 28565 现在,当使用Altium Light Grey UI主题时,参数表编辑器会正确显示所有数据(BC:9931)。 28716 恢复了通过其属性添加和编辑与原理图组件或文档关联的设计规则的功能。在“属性”面板的“参数”选项卡下的“规则”部分中访问。 PCB 16383 修复了导致基于嵌入式主板的ODB ++输出失败的错误。 24425 Gloss和Retrace现在能够对联合对象进行操作。 24595 对路由友好的移动组件功能进行了各种增强,括更好地支持何时:组件被扇出; 它的引脚布线; 目标区域有路线(BC:1048 ; BC:2866)。 24805 继续开发交互式路由器跟随模式,修复各种错误和行为。 25517 添加了HDI - microvia(uVia)支持。 25634 解决了在某些视角下半透明自由3D体不能看到捕捉点和测量线的问题。 25666 当无法在信号完整性的“模型分配”对话框中更改“值/类型”列值时,修复了回归。 25671 解决了交互式差分对长度调整命令不遵守设置为匹配路由差分对的目标长度的问题。 25724 修复了交互式多路径过程中的回归,其中未通过“属性”面板应用总线间距的更改。 25809 单击选项卡时,图层选项卡不再自动滚动。只要最左侧的选项卡不是第一个可见选项卡(BC:9927),就会发生这种情况。 25853 现在,使用From Diff时,“目标长度”值在“属性”面板中正确排序。对设置。 25951 添加首选项选项以在移动组件功能后启用/禁用重新连接。 25975 修复了在特定电路板设计中启动交互式路由器时存在很长延迟的问题。 25982 为焊盘和过孔添加并集成了新的热释放选项。 26034 修复了“PCB列表”面板“智能编辑”功能中的错误,其中“批量替换”功能无效。 26128 增加了定义,使用和输出无限数量机械层的功能(BC:8976)。 26144 修复了在删除上一组时选择图层集时在“视图配置”面板中出现的“被销毁后访问的对象”错误消息。 26361 解决了IPC Compliant Footprint Wizard中的回归问题,当未选择Full Matrix时,无法更改(或插入)LGA,BGA布局选项的任何参数。 26459 修复了“属性”面板中的“网络类别”排序,以匹配软件其他区域中使用的网络排序,例如PCB面板。 26610 更新了图层堆栈管理器,其中含用于堆栈定义,uVia支持,材料库,阻抗计算器等的新文档界面和UI增强功能。 26862 解决了CAMtastic问题,其中设计规则值被错误地舍入到一个小数位。 26953 修复了在PCB库编辑器(BC:9535)中错误地提供定义新组件层对的能力的问题。 26970 解决了Extract 3D Models功能无法从源PCB库(BC:9418)创建3D模型文件输出的问题。 27000 修复了特殊字符串中的项目参数未响应参数值的更改而更新的问题。 27451 修复了使用嵌入式板阵列创建的PCB面板错误地将板轮廓(“轮廓”)层输出到ODB ++的问题。 27575 修复了DRC标记反钻停止层的最小环形环违规时的问题。 27661 添加了在交互式路由期间从Ctrl + L热键打开的下拉菜单中直接选择首选图层的功能。 27662 添加了在交互式路由期间使用数字键盘键选择所需图层的功能。 27666 添加了“显示图层编号”选项以在PCB编辑器图层选项卡中启用图层编号。 27673 修复了在多边形浇筑上粘贴自由垫或通道时不接受该多边形的网络设置的问题,导致短路和间隙违规(BC:9229)。 27689 添加了交互式路由逻辑,以防止子通道在推送和拥抱过程中与其堆叠的通路设置轴分离。 27708 修复了在特定项目中打开PCB文档后未出现反钻的问题。 27771 在Interactive Routing Properties面板中添加了完全标记的Via侧视图。 27871 为独立区域实现了Arc Approximation属性。此属性可用于“属性”面板,“PCB列表”面板和“FSO”对话框中的选定区域。 28086 修复了在特定电路板设计中针对阴影多边形报告错误的未路由网络违规的问题。 28114 修复了通过Make PCB Library功能(BC:9847)将第17-32层上的某些对象(如Line和Arc)转换为第16层的错误。 28174 为“垫”和“过孔”的“属性”面板添加了“热释放”连接样式选项,这些选项将覆盖PolygonConnect规则中定义的样式。 28188 现在,Gerber-X2 Exporter在使用arcs \ curves (BC:9868)时可以正确生成Profile层。 28275 现在可以在放置可以连接到多个网络的PCB对象时正确处理网络继承,将显示一个列出所有可能网络的选择窗口。 28427 添加了在PCB库中放置尺寸的功能,这些功能未出现在PCB布局中(BC:903)。 28428 添加了从选定的轨迹,弧线和实体区域创建3D实体的功能。使用工具>转换>从所选基元创建3D体(BC:1868)。 28441 按下L快捷键将移动组件翻转到电路板的另一侧不再导致显示不正确的焊盘违规(BC:5427)。 29176 在交互式路由的层转换期间,6快捷键可用于通过选项循环可用。现在括所有可能的通道组合,例如uVia + blind via。 29179 增加了在3D模式下在叠加层上移动字符串的可能性(BC:584)。 29262 修复了PCB 3D体点中的回归,其中使用“位置3D体”工具时无法选择添加的自定义捕捉点。 29269 在使用移除未使用的垫形状工具移除未使用的垫/通孔环(BC:4701)后,DRC不再错误地检测到最小环形环错误。 29698 解决了组件错误启用“翻转图层”设置的突出情况,括:在移动然后执行撤消时翻转组件; 使用当前图层上的粘贴功能(Alt + Ins或选择性粘贴)在粘贴时交换图层; 或者从启用了该设置的旧版本导入首选项(BC:9238 ; BC:10235)。 29727 修复了无法将特殊字符粘贴到文本字符串的Text属性框中的回归(BC:10221)。 29778 解决了使用RMB多次拖动视图后PCB编辑器性能下降的问题。 29786 “PCB规则和违规”面板中的缩放行为得到了改进 - 现在缩放到违规细节而不是违规对象(BC:7987)。 29887 解决了3D模型中的透明对象在3D命令期间变得可见的问题,例如从3D主体创建,与板对齐面或测量3D对象(BC:8699)。 29932 添加了新的查询关键字:IsBlindVia,IsBuriedVia,IsMicroVia和IsThruVia。 30270 修复了在3D模式下拖动PCB组件指示符时突出显示不起作用的问题
一、下载和存放位置 请大家下载后,放到 ado/base/s 这个文件夹下,到时候才可以自动调取命令 二、相关命令 中介效应命令: sgmediation y, mv() iv() cv() 中介效应+自抽样命令: bootstrap r(ind_eff) r(dir_eff),reps(1000) : sgmediation y, mv() iv() cv() estat bootstrap,percentile bc 三、仍然出现r(ind_eff)' evaluated to missing in full sample r(322);错误 我仔细研究了一下中介效应的原理和计算方式,所以才之前ado的基础上发现了这个能跑出来的结果。这里,针对下载之后仍出不来结果的情况解释一下 1,在下载我这个之前,下载过其他sgmediation的,造成冲突,跑不出来结果 解决办法:改动三个地方,把时光,sgmediation变成sgmediation1 (1)sgmediation命令的文件名 (2)ado按照do文件的方式打开,将第12行programme define 后面改成 sgmediation1 (3)调用命令时 bootstrap冒号后面也改成sgmediation 原理:之前你下载了别的ado,已经有个叫张三(sgmediation)的了,你喊张三,只能出来张三,现在通过改命令,变成张三1(sgmediation1),就实现了成功调用命令 2,下载了很多个,搞混了 解决办法:我的有几个明显特征,可以自行查验(1)最开始的命令更新有一堆,一直到version1.11 (2)第35行local avar的暂元计算时,(_se[‘iv’])^2 标准误打了括号之后再求的平方 (3)最后计算单值时,有return scalar ind_eff 和dir_eff,也就是间接效应和直接效应
对于应用打时出现 "JCE cannot authenticate the provider BC" 的问题,可以尝试以下解决方法: 1. 检查应用程序的依赖项:确保应用程序中使用的 Bouncy Castle (BC) 提供程序的版本与您的应用程序依赖项中所声明的版本一致。如果版本不匹配,可能会导致此错误。 2. 检查 Java 安全策略文件:请确保您的应用程序的 Java 安全策略文件(java.security)中已正确配置了 Bouncy Castle 提供程序。您可以检查文件中的 `security.provider.<n>` 配置项,其中 `<n>` 是提供程序的优先级顺序。 3. 检查权限问题:在某些情况下,可能会因为权限设置而导致 JCE 无法验证 BC 提供程序。确保您的应用程序在运行时具有足够的权限来加载和验证提供程序。 4. 更新 JDK 或 JCE Unlimited Strength Jurisdiction Policy 文件:如果您使用的 JDK 版本较旧,则可能需要更新 JDK 或安装 JCE 无限强度策略文件。这是因为一些旧版本的 JDK 限制了加密算法的使用,导致 JCE 无法验证 BC 提供程序。 5. 检查其他冲突的安全提供程序:如果您的应用程序中同时使用了其他安全提供程序,可能会发生冲突。请确保没有其他提供程序与 BC 提供程序发生冲突。 通过以上几个步骤,您应该能够解决 "JCE cannot authenticate the provider BC" 的问题。如果问题仍然存在,请提供更多的上下文信息,以便我能够提供更具体的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值