DLL加载时出错
r32 *.dll加载试试 1、开始-运行,输入msconfig,在“启动”中把相关自启动的选项都去掉。
2、关闭系统还原。
(我的电脑-属性-系统还原,选择“在所有的驱动器上关闭系统还原”) 3、把C:\Documents and Settings\用户名\Local Settings\Temp和C:\Documents and Settings\用户名\Local Settings\Temporary Internet Files文件夹下的所有文件都删除。
(如果看不到此文件夹,工具-文件夹选项,在“查看”中有一项是“隐藏文件和文件夹”,选择“显示所有文件和文件夹”) 4、把C:\WINDOWS\Prefetch文件夹下的所有文件都删除。
5、控制面板-服务,把你认为不需要的服务都改为“手动”并停用。
6、关闭各种视觉效果(我的电脑-属性,弹出的窗口里选择“高级”标签,性能的设置,选择最佳性能,或者只保留倒数第二项、倒数第三项和在窗口和按钮上保持视觉样式。
) 7、关闭远程协助(我的电脑-属性,弹出的窗口里选择“远程”标签,然后取消下面两个选项的选择。
) 8、安装优化软件(二者选一即可,我用的是TuneUp) TuneUp Utilities 下载地址: Windows优化大师 下载地址: 可能是这个dll因为某些原因(最大的可能是因为它是个病毒或流氓软件的dll文件,被杀软删除了)丢失了,但其相关的注册信息却还在,导致系统开机时还加载它,却又找不到它的文件,所以报错。
如果你点击“确定”后,系统没有什么不正常,并且可以正常运行的话,你可以用这个软件清理掉这个开机加载项,以后开机就不会出现这个信息了。
Autoruns:开机启动项管理 DLL文件即动态链接库文件,是一种可执行文件,它允许程序共享执行特殊任务所必需的代码和其他资源。
Windows提供的DLL文件中包含了允许基于Windows的程序在Windows环境下操作的许多函数和资源。
DLL多数情况下是带有DLL扩展名的文件,但也可能是EXE或其他扩展名。
它们向运行于Windows操作系统下的程序提供代码、数据或函数。
程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。
DLL是Dynamic Link Library的缩写,意为动态链接库。
在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。
当我们执行某一个程序时,相应的DLL文件就会被调用。
一个应用程序可有多个DLL文件,一个DLL文件也可能被几个应用程序所共用,这样的 DLL文件被称为共享DLL文件。
DLL文件一般被存放在C:\Windows\System目录下。
1、如何了解某应用程序使用哪些DLL文件 右键单击该应用程序并选择快捷菜单中的“快速查看”命令,在随后出现的“快速查看”窗口的“引入表”一栏中你将看到其使用DLL文件的情况。
2、如何知道DLL文件被几个程序使用 运行Regedit,进入HKEY_LOCAL_MACHINE\Software\Microsrft\Windows\Current- Version\SharedDlls子键查看,其右边窗口中就显示了所有DLL文件及其相关数据,其中数据右边小括号内的数字就说明了被几个程序使用,(2)表示被两个程序使用,(0)则表示无程序使用,可以将其删除。
3、如何解决DLL文件丢失的情况 有时在卸载文件时会提醒你删除某个DLL文件可能会影响其他应用程序的运行。
所以当你卸载软件时,就有可能误删共享的DLL文件。
一旦出现了丢失DLL文件的情况,如果你能确定其名称,可以在Sysbckup(系统备份文件夹)中找到该DLL文件,将其复制到System文件夹中。
如果这样不行,在电脑启动时又总是出现“***dll文件丢失……”的提示框,你可以在“开始/运行”中运行Msconfig,进入系统配置实用程序对话框以后,单击选择“System.ini”标签,找出提示丢失的DLL文件,使其不被选中,这样开机时就不会出现错误提示了。
打开软件总弹出安全警告
首先应了解,在内置管理员帐户下运行时计算机会面临风险。
默认情况下,此帐户处于禁用状态,这是为了防御恶意软件,从而提升计算机的安全性。
如果仅希望避免用户帐户控制提示,则只需转至操作中心,单击“更改用户帐户控制设置”更改此设置即可。
如果仍然希望启用内置管理员帐户,请执行下列步骤: 单击「开始」按钮,然后在搜索框中键入 cmd。
在搜索结果列表中,右键单击 cmd,然后单击“以管理员身份运行”。
在命令提示符下,键入 net user administrator /active:yes,然后按 Enter。
键入 net user administrator ,然后按 Enter。
注意:请用要为管理员帐户设置的密码替换 标记。
键入 exit,然后按 Enter。
从当前用户帐户注销。
从而以管理员身份登陆,安装软件应该就有权限了吧!再没有权限,那就是你系统问题了!
加载dll出错
你有遇到开机时提示加载某某dll文件出错的情况么,来看看如何解决这个问题吧 一、关闭启动程序法开始菜单→运行→输入“msconfig”→确定→打开系统配置实用程序→启动选择卡→在命令里找到含该某某dll的那一项,把前边的勾去掉,然后确定就可以了。
二、注册表法开始→运行→输入“regedit”→确定→打开注册表编辑器。
找到以下的位置 ,删除含某某dll的相应键值: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 在注册表编辑器中→菜单栏→编辑→查找→输入某某dll→搜索→删除查找到的对应项目。
可能不止一个。
可以直接按f3键查找下一个。
绝地求生提示:在基本Dll文件中出错请重新安装所需的软件:例 如...
微软运行库没安装好,游戏必备运行库NET_Framework和DirectX和系统必备的VC++都要安装好,有些软件游戏运行需要微软运行库支持,解决方法:1、下载驱动精灵安装打开,打开系统助手,系统必备组件,游戏必备组件。
全部安装,微软运行库不向下兼容。
2、百度2018微软运行库集合包进行安装
安装金山游侠时怎么显示DLL出错,就装不上了
这种问题最麻烦. 其实我也对这个问题有烦恼,整天寻找解决办法 这里总结一下 内存不能为“read”或“written”的解决方案 有些人运行程序的时候会弹出该内存不能为“read”的错误提示。
希望以下文章能对你有所帮助。
使用Windows操作系统的人有时会遇到这样的错误信息,运行某些程序的时候,有时会出现内存错误的提示,然后该程序会自动关闭或点击后关闭,严重的会无法关闭。
“0x????????”指令引用的“0x????????”内存。
该内存不能为“read”。
“0x????????”指令引用的“0x????????”内存,该内存不能为“written”。
不知你出现过类似这样的故障吗?(0x后面内容有可能不一样。
) 散一般出现这个现象有方面的,一是硬件,即内存方面有问题,二是软件,这就有多方面的问题了。
1、微软IE缓冲溢出漏洞引起 2、内存或虚拟内存地址使用冲突造成程序的运行需要分配一定的内存地址给程序使用,当程序结束时释放留出空间让给新的程序使用,win是多任务的系统有时前程序未结束 又有新的任务开始到底要多少内存或虚拟内存来保证我们同时运行的工作任务呢?也许win在这个问题上没弄好,所以有此错误常常发生,一般运行大型软件或多媒体后出现这种情况 3、劣质内存条也会出现这个问题一般来说,内存出现问题的可能性并不大,主要方面是:内存条坏了、内存质量有问题,还有就是2个不同牌子不同容量的内存混插,也比较容易出现不兼容的情况,同时还要注意散热问题,特别是超频后。
你可以使用MemTest这个软件来检测一下内存,它可以彻底的检测出内存的稳定度。
假如你是双内存,而且是不同品牌的内存条混插或者买了二手内存时,出现这个问题,这时,你就要检查是不是内存出问题了或者和其它硬件不兼容。
4、微软WINDOWS系统的漏洞,windows把内存地址0X00000000到0X0000ffff指定为分配null指针的地址范围,如果程序试图访问这一地址,则认为是错误。
c/c++编写的程序通常不进行严格的错误检查,当采用malloc来分配内存而可供分配的地址空间不够的情况下返回null指针。
但是代码不检查这种错误,认为地址分配已经成功,于是就访问0X00000000的地址,于是就发生内存违规访问,同时该进程被终止。
ASCII字符填充组成的pif文件时会出现以下情况:一个非法的pif文件(用ascii字符\''x\''填充)至少要369字节,系统才认为是一个合法的pif文件,才会以pif的图标[pifmgr.dll,0]显示,才会在属性里有程序、字体、内存、屏幕”等内容。
而且仅仅当一个非pif文件的大小是369字节时察看属性的“程序”页时,不会发生程序错误,哪怕是370字节也不行。
当对一个大于369字节的非法pif文件察看属性的“程序”页时,Explorer会出错,提示:\''***\''指令引用的\''***\''内存。
该内存不能为\''read\'' ,问题出在pif文件的16进制地址:0x00000181[0x87]0x00000182[0x01]和 0x00000231[0xC3]0x00000232[0x02]即使是一个合法pif文件,只要改动这四处的任意一处,也会引起程序错误。
而只要把0x00000181和0x00000182的值改为[0xFF][0xFF],那么其它地址任意更改都不会引起错误。
5、可能没有完全正确安装apache服务,且启动了它的原故; 把服务中OracleOraHomeXXHTTPServer改成停 止 6、应用程序没有检查内存分配失败程序需要一块内存用以保存数据时,就需要调用操作系统提供的“功能函数”来申请,如果内存分配成功,函数就会将所新开辟的内存区地址返回给应用程序,应用程序就可以通过这个地址使用这块内存。
这就是“动态内存分配”,内存地址也就是编程中的“指针”。
内存不是永远都招之即来、用之不尽的,有时候内存分配也会失败。
当分配失败时系统函数会返回一个0值,这时返回值“0”已不表示新启用的指针,而是系统向应用程序发出的一个通知,告知出现了错误。
作为应用程序,在每一次申请内存后都应该检查返回值是否为0,如果是,则意味着出现了故障,应该采取一些措施挽救,这就增强了程序的“健壮性”。
若应用程序没有检查这个错误,它就会按照“思维惯性”认为这个值是给它分配的可用指针,继续在之后的运行中使用这块内存。
真正的0地址内存区保存的是计算机系统中最重要的“中断描述符表”,绝对不允许应用程序使用。
在没有保护机制的操作系统下(如DOS),写数据到这个地址会导致立即死机,而在健壮的操作系统中,如Windows等,这个操作会马上被系统的保护机制捕获,其结果就是由操作系统强行关闭出错的应用程序,以防止其错误扩大。
这时候,就会出现上述的“写内存”错误,并指出被引用的内存地址为“0x00000000”。
内存分配失败故障的原因很多,内存不够、系统函数的版本不匹配等都可能有影响。
因此,这种分配失败多见于操作系统使用很长时间后,安装了多种应用程序(包括无意中“安装”的病毒程序),更改了大量的系统参数和系统文件之后。
7、应用程序由于自身BUG引用了不正常的内存指针在使用动态分配的应用程序中,有时会有这样的情况出现:程序试图读写一块“应该可用”的内存,但不知为什么,这个预料中可用的指针已经失效了。
有可能是“...
转载请注明出处51数据库 » 打软件提示dll文件出错
9578471884