今天给各位分享nikon d2h的知识,其中也会对华为g305t进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文导读目录:
atistreamsdk(如何设计一个杀毒软件!
终止进程以前网上曾有许多朋友问我怎么根据文件名终止指定进程,为什么使用函数TerminateProcess()不能直接终止指定进程,那就是:终止病毒的进程删除自启动项目(一般在注册表中的run*主键下删除病毒文件,而不是进程名称(文件名,这样就可以利用函数TerminateProcess()终止该进程了,AMD的HDX是否支持OpenCL或者说能否用来挖矿,AMD的HDX是否支持OpenCL或者说能否用来挖矿,唯一值得注意的是RegSetValueEx()函数中第个参数的类型是BYTE而不是LPCTSTR,其实写病毒专杀工具也不像大家想象的那么神秘。
如何设计一个杀毒软件!
信息来源:neeaoblog如今病毒木马蠕虫层出不穷,变种也是一个接一个。反病毒公司以及各大安全公司随着影响很大的病毒的出现都会免费提供病毒专杀工具,这个举措对普通用户来说确实很有帮助。其实写病毒专杀工具也不像大家想象的那么神秘,利用SDK写个控制台程序来实现病毒专杀,因无须写图形界面,所以简便快捷!你自己也能写!不信?就接着看吧废话不说了,接下来就开始谈谈病毒专杀工具的思路及实现方法。此文中讲解的病毒专杀工具是针对木马蠕虫等独立的程序而言的广义的病毒而言,而不是指那种自我复制感染PE文件的依附于其他程序的那种狭义的病毒。因为写那种病毒的专杀工具需要PE文件结构等知识,相对而言有点难度,所以我们就先从相对简单点的开始,难的以后再介绍。对于大多数病毒而言,杀毒的思路其实很简单,那就是:终止病毒的进程删除自启动项目(一般在注册表中的run*主键下删除病毒文件,对设置了文件关联的病毒而言还要修改注册表恢复文件关联。下面将分别陈述。一.终止进程以前网上曾有许多朋友问我怎么根据文件名终止指定进程,为什么使用函数TerminateProcess()不能直接终止指定进程。首先让我们来看看函数TerminateProcess()的声明吧:BoolTerminateProcess(HANDLEhPeocess,UINTuExitCode),其中第一个参数为进程句柄,而不是进程名称(文件名。那怎样才能获得指定进程的句柄呢?我们可以使用函数OpenProcess(),其原型为HANDLEOpenProcess(DWORDdwDesiredAess,//访问标志BOOLbInheritHandle,//处理继承的标志DWORDdwProcessId//进程标识号,即进程ID);最后一个参数就是该进程的ID,进程句柄和进程ID是两回事,这时你可能很郁闷:怎么知道进程ID呢?方法当然有啦!在WindowsX//XP/中,微软均提供了用来枚举进程的ToolHelpAPI系列函数。先运用函数CreateToolhelpSnapshot()取得快照句柄,然后使用ProcessFirst()以及ProcessNext()枚举当前的进程。枚举过程中会将每一个进程的信息存放到PROCESSENTRY结构中。PROCESSENTRY的原型为:typedefstructtagPROCESSENTRY{DWORDdwSize;//结构大小;DWORDtUsage;//此进程的引用计数;DWORDthProcessID;//进程ID;DWOR DthDefaultHeapID;//进程默认堆ID;DWORDthModuleID;//进程模块ID;DWORDtThreads;//此进程开启的线程计数;DWORDthParentProcessID;//父进程ID;LONGpcPriClassBase;//线程优先权;DWORDdwFlags;//保留;charszExeFile;//进程全名;}PROCESSENTRY;其中thProcessID就是进程的ID,szExeFile为该进程的文件名。所以要终止指定进程,我们可以枚举进程,逐一判断szExeFile是否和我们欲终止的进程名相同,如果相同就取其thProcessID参数,然后代入OpenProcess函数,取得目标进程的句柄。这样就可以利用函数TerminateProcess()终止该进程了。我写了个终止指定进程的函数,如下:voidKillProcessFromName(LPCTSTRname)//name为你要终止的进程的名称,WinX则需包括路径{PROCESSENTRYpe;//定义一个PROCESSENTRY结类型的变量HANDLEhShot=CreateToolhelpSnapshot(THCS_SNAPPROCESS,);//创建快照句柄pe.dwSize=sizeof(PROCESSENTRY);//一定要先为dwSize赋值if(ProcessFirst(hShot,&pe)){do{if(strcmp(pe.szExeFile,name)==)//判断此进程是否为你要终止的进程HANDLEhProcess=OpenProcess(PROCESS_ALL_AESS,FALSE,pe.thProcessID);//如果是就利用其ID获得句柄TerminateProcess(hProcess,);//终止该进程}while(ProcessNext(hkz,&pe));}CloseHandle(hShot);//最后别忘记Close}在使用时只要在main()主函数里调用函数KillProcessFromName(,把参数设为你要终止的进程的名称即可,WinX则需包括路径。还有一点值得注意一下,就是别忘了#include《TlHelp.h》。二删除文件这一步骤很简单,调用函数DeleteFile()即可,BoolDeleteFile(LPCTSTRlpFilename),把lpFilename设要指向删除的文件的文件名的指针即可,可包含具体路径。三修改注册表,删除启动项及文件关联首先用函数RegOpenKeyEx()打开目标主键,RegOpenKeyEx()函数原型为LONGRegOpenKeyEx(HKEYhKey,//将要打开的键的句柄LPCTSTRlpSubKey,//指向将要打开的包含子建的名称字符串指针DWORDulOptions,//为保留字,必须为NULLREGSAMsamDesired,//访问权限PHKEYphkResult//指向打开键的句柄指针);获得句柄后用函数RegSetValueEx()进行修改键值,函数原型为:LONGRegSetValueEx(HKEYhKey,//当前打开的键的句柄LPCTSTRlpValueName,//指向非空的包含要查询的值名称的字符串指针DWORDReserved,//保留值,必须为NULLDWORDdwType,//键值类型,比如REG_SZREG_DWORD等CONSTBYTE*lpData,//指向键值数据的指针,注意此变量类型,不是LPCTSTR!DWORDcbData//指向保存设定值长度变量的指针,以字节为单位);当然也可以用函数RegDeleteValue()来删除键值。操作完毕后别忘了用函数RegCloseKey()来Close。使用这些函数很简单,只要把相应的参数换为你要删除或修改注册表的相应数值,唯一值得注意的是RegSetValueEx()函数中第个参数的类型是BYTE而不是LPCTSTR!通过这些就可以很方便删除指定启动项以及恢复文件关联,为了便于大家理解,我举个修复EXE文件关联的例子,大家修改相应的参数就可以适用其它键值的修改,换用RegDeleteValue函数就可以实现删除自启动项nikon d2h(华为g305t)。HKEYhKey;LPCTSTRdata=““%“%*“;//EXE文件默认的open方式,”%“表EXE文件本身DWORDlResult=RegOpenKeyEx(HKEY_CLASSES_ROOT,“exefile\shell\open\mand“,,KEY_WRITE,&hKey);if(lResult==ERROR_SUESS)RegSetValueEx(hKey,““,NULL,REG_SZ,(LPBYTE)data,);//修改键值RegCloseKey(hKey);到这里,一个病毒专杀工具的模型就已初步完成了,大家自己编写时只需把文中函数的形参换为你要杀的目标病毒的相应特征数据编译即可。这个是个简单的专杀工具,只能对付普通的木马蠕虫等病毒,大家应具体情况具体分析,根据具体情况扩充该程序功能,比如有些木马是通过修改win.inisystem.ini来实现自动运行,我们就需操作文件删除相应数据,除此之外,有时还需添加终止服务卸载DLL模块进入RING操作等功能。总之,我相信大家一定能自己写出病毒木马专杀工具的!呵呵,是不是很有成就感呢!
AMD的HDX是否支持OpenCL或者说能否用来挖矿,速度如何
华为g305twindows删除字体(win字体)
本文为大家介绍windows删除字体(win字体),下面和小编一起看看详细内容吧。
win字体文件夹在哪
win字体文件夹在控制面板的字体选项里。如果需要找到字体文件夹,可以先打开控制面板,然后找到字体文件夹,点击打开。具体搜索方法如下:设备:联想小新padPro寸电脑;操作系统:win专业版nikon d2h(华为g305t)。
nikon d2h的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于华为g305t、nikon d2h的信息别忘了在本站进行查找喔。