1.易语言怎么写DNF.dll文件注入器
.版本 2
.支持库 shell
.程序集 窗口程序集1
.程序集变量 输入法句柄
.子程序 __启动窗口_创建完毕, , 公开
热键.注册 (_启动窗口.取窗口句柄 (), , #Home键, &子程序1)
.子程序 输入法注DLL
写到文件 (取特定目录 (10) + “\SouGoo.ime”, #Shurufa)
写到文件 (取运行目录 () + “\feifei.dll”, #Dll)
输入法句柄 = 输入法.安装 (取特定目录 (10) + “\SouGoo.ime”)
.如果真 (输入法句柄 ≠ 0)
输入法.设置注入 (取特定目录 (10) + “\Sougoo.ime”, 取运行目录 () + “\feifei.dll”)
信息框 (“按Home呼出!!!”, 0, )
.如果真结束
.子程序 _按钮1_被单击
.如果真 (进程是否存在 (“DNF.exe”))
输入法注DLL ()
返回 ()
.如果真结束
信息框 (“游戏未运行!”, 0, )
.子程序 子程序1
.局部变量 进程, 逻辑型
进程 = 进程是否存在 (“DNF.exe”)
.如果真 (进程)
输入法.激活 (取句柄2 (“DNF.exe”, , ), 输入法句柄)
.如果真结束
.子程序 _按钮2_被单击
.局部变量 dnf进程, 逻辑型
dnf进程 = 输入法.卸载 (输入法句柄)
.如果 (dnf进程)
信息框 (“关闭成功!”, #信息图标, “系统信息”)
.否则
信息框 (“关闭失败!可能已经关闭!”, #信息图标, “系统信息”)
进程结束 (进程取ID (“DNF.exe”))
输入法.清除注入 (取特定目录 (10) + “\Sougoo.ime”)
删除文件 (取运行目录 () + “\feifei.dll”)
输入法.卸载 (输入法句柄)
结束 ()
.如果结束
输入法.清除注入 (取特定目录 (10) + “\Sougoo.ime”)
删除文件 (取运行目录 () + “\feifei.dll”)
输入法.卸载 (输入法句柄)
结束 ()
.子程序 __启动窗口_将被销毁
输入法.清除注入 (取特定目录 (10) + “\Sougoo.ime”)
删除文件 (取运行目录 () + “\SkinH_EL1.dll”)
输入法.卸载 (输入法句柄)
2.DNF 显示DLL
一旦出现蓝屏,版主就该立即记录下蓝屏代码,这样就可以依据代码对号入座,这样问题就很容易解决了。
回答版主的问题,首先我先说下蓝屏的原因有哪些,这样让版主对蓝屏有个大致的了解。其次,我在最后附上了一些蓝屏代码,供版主依代码来解决问题,当然代码很多我不可能全部列出来完。
剩余的,版主可以在最后的链接去查看更多代码。 电视机会出现蓝屏,电脑也会出现"蓝屏"。
电脑出现"蓝屏"时还会出现一连串警告,轻者只要按ESC就能返回,重者就会出现死机,使人十分烦恼。出现"蓝屏"无外有二种情况,一种是软件引起的,另一种是硬件引起的,软件引起的"蓝屏"故障,一般重装系统都能解决。
但也可以不重装系统来解决。而硬件引起的"蓝屏"故障,要根据具体的情况分别解决。
一、软件引起的"蓝屏"故障 1、重要文件损坏或丢失会引起"蓝屏"故障(包括病毒所致)。 WIN中VxD(虚拟设备驱动程序)或.DLL(动态连接库)之类的重要文件丢失会出现"蓝屏警告"。
解决的办法是利用Win的启动盘中的"Ext"来恢复被损坏或丢失的文件,步骤如下: (1)、先用WIN的启动盘起动电脑,在提示符下敲入"Ext"命令; (2)、在提示"Please enter the path to the Windows CAB files (a) :" 后输入WIN安装压缩包所在的完整路径,回车,如"E:\Pwin2003\Win2003; (3)、在提示"Please enter the name (s) of the file (s) you want to extract:"后输入你丢失的文件名,如"BIOS.Vxd",回车; (4)、在解压路径提示"Please enter path to extrct to (' Enter' for current directory): " 后输入文件将被解压到的完整路径,如"C:\Windows\System" 并回车,后面出现的提示,只要按YES回车即可,得新启动后就能恢复系统。注:因事先记下丢失的文件名,以便恢复) 如是病毒引起,可用杀毒软件来杀毒,并及时恢复中毒前的备份; 如果能启动图形界面,可采取重装主板以及显示卡的驱动程序,和进行"系统文件扫描"来恢复被破坏或丢失的文件,可从开始菜单内附件中的系统工具中找到; 2、注册表损坏导致文件指向错误所引起的"蓝屏" 在注册表被改动后或受到破坏,在开机或在调用程序时出现"蓝屏",并且屏幕有出错信息(包括出错的文件名)。
--解决方法是恢复注册表备份,重新启动计算机,切换到MS-DOS方式,进入Windows子目录,键入Scanreg\regstore 后回车,就可恢复最近一次注册表 3、在卸载程序后出现"蓝屏",多数是由于程序卸载不完善造成。解决办法:首先记下出错文件名,然后到注册表中找到以下分支"HKEY_LOCAL_MACHINE\Sysytem\CurrentControlSet\Services\VxD",在"查找"中输入出错的文件名,把查到键值删除即可。
4、在System.ini文件错误引起的"蓝屏",由于软件卸载或安装时没有即时更新System.ini造成"蓝屏"的,解决办法:禁用注册表中该项或重装相应软件或驱动程序; 由于Win98的spl和Microsoft的Vxd_fix.exe补丁程序对Win98的稳定起着重要的作用,可到华军网站下载补丁Vxd_fix.exe. 5、系统资源耗尽引起的蓝屏。这一类故障主要是三个堆资源(系统资源、用户资源、GDI资源)占用有情况有关。
--打开资源监视器,看一下剩余资源的情况,如这三种资源都 在50%甚至更低,就很容易出现"非法操作"、"蓝屏"、"死机"。因此,必须减少资源浪费,减少不必要的程序加载,避免同时运行大程序(如图形、声音和视频软件),如加载计划任务程序、输入法和声音指示、声卡的DOS驱动程序,系统监视程序等; 6、DirexctX问题引起的"蓝屏"故障。
如DirectX版本过高、过低;游戏与它不兼容或是不支持;辅助文件丢失;显卡对它不支持,都可能造成此故障。升级或重装DirectX,尝试更新显卡的BIOS和驱动程序,或升级显卡。
7.软件不兼容导致的。 二、硬件引起的"蓝屏"故障 此类故障主要有以下几种: 1.内存超频或不稳定。
主要出现随机性"蓝屏"。恢复正常频率运行,或找一根好的内存条进行替换,一般都能解决问题,还要注意和CPU内存条很近的散热问题; 2.硬件的兼容性不好引起的"蓝屏"。
由于DIY门使用的是兼容机,没有经过完善的监测,从而留下陷患, 如不同规格的内存条混插等,可交换内存条所插的插糟位置,或更换相同规格、厂家、批号的内存条都可解决问题。而内存条的好坏直接影响系统的稳定性,应特别引起重视; 3.硬件散热问题也会引起"蓝屏"。
这一类故障,往往都有一定规律,一般在电脑运行一段时间后才出现,表现中"蓝屏"死机或随意重启动,解决方法是很简单,不要随意超频,加强机内的降温。 4、I / O冲突也能引起"蓝屏"。
这种现象比较少,如果出现,可以从系统中删除带!号或?号的设备名,重新启动计算机,一般能解决。 三、预防措施 总之要做到防患于末然,只要能在平时能做到以下几点,就能有效地避免出现"蓝屏"或死机。
1.定期对注册表进行备份,出错时能够及时恢复到原来的状态; 2.尽量避免非正常关机,可减少重要文件丢失。如.VxD .DLL文件等; 3.一般而言,计算机能正常工作,没必要去升级著如显。
3.dll文件用什么语言写或者怎么制作
DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用,这样的DLL文件被称为共享DLL文件。
Windows操作系统中的一些作为 DLL 实现的文件
·ActiveX 控件 (.ocx) 文件
ActiveX控件的一个示例是日历控件,它使您可以从日历中选择日期。
·控制面板 (.cpl) 文件
.cpl 文件的一个示例是位于控制面板中的项。每个项都是一个专用 DLL。
·设备驱动程序(.drv) 文件
设备驱动程序的一个示例是控制打印到打印机的打印机驱动程序。
链接方法:
当您在应用程序中加载 DLL 时,可以使用两种链接方法来调用导出的 DLL 函数。这两种链接方法是加载时动态链接和运行时动态链接。
在运行时动态链接中,应用程序调用 LoadLibrary 函数或 LoadLibraryEx 函数以在运行时加载 DLL。成功加载 DLL 后,可以使用 GetProcAddress 函数获得要调用的导出的 DLL 函数的地址。在使用运行时动态链接时,无需使用导入库文件。
Win32 DLL的特点
Win32 DLL与 Win16 DLL有很大的区别,这主要是由操作系统的设计思想决定的。一方面,在Win16 DLL中程序入口点函数和出口点函数(LibMain和WEP)是分别实现的;而在Win32 DLL中却由同一函数DLLMain来实现。无论何时,当一个进程或线程载入和卸载DLL时,都要调用该函数,它的原型是
BOOL WINAPI DllMain(HINSTANCE hinstDLL,DWORD fdwReason, LPVOID lpvReserved);
其中,第一个参数表示DLL的实例句柄;第三个参数系统保留;这里主要介绍一下第二个参数,它有四个可能的值:DLL_PROCESS_ATTACH(进程载入),DLL_THREAD_ATTACH(线程载入),DLL_THREAD_DETACH(线程卸载),DLL_PROCESS_DETACH(进程卸载),在DLLMain函数中可以对传递进来的这个参数的值进行判别,并根据不同的参数值对DLL进行必要的初始化或清理工作。举个例子来说,当有一个进程载入一个DLL时,系统分派给DLL的第二个参数为DLL_PROCESS_ATTACH,这时,你可以根据这个参数初始化特定的数据。另一方面,在Win16环境下,所有应用程序都在同一地址空间;而在Win32环境下,所有应用程序都有自己的私有空间,每个进程的空间都是相互独立的,这减少了应用程序间的相互影响,但同时也增加了编程的难度。大家知道,在Win16环境中,DLL的全局数据对每个载入它的进程来说都是相同的;而在Win32环境中,情况却发生了变化,当进程在载入DLL时,系统自动把DLL地址映射到该进程的私有空间,而且也复制该DLL的全局数据的一份拷贝到该进程空间,也就是说每个进程所拥有的相同的DLL的全局数据其值却并不一定是相同的。因此,在Win32环境下要想在多个进程中共享数据,就必须进行必要的设置。亦即把这些需要共享的数据分离出来,放置在一个独立的数据段里,并把该段的属性设置为共享。
转载请注明出处育才学习网 » dnf里的dll怎么写