来自 澳门金莎娱乐手机版 2019-11-14 16:49 的文章
当前位置: 金沙澳门官网网址 > 澳门金莎娱乐手机版 > 正文

澳门金莎娱乐手机版Dll注入的多少个注意事项,

后日要将本人的程序宽容62人系统,本来感觉是个大工程,然而查阅了有关资料后开采这一个实际轻便。因为,平时的三十二个人程序都足以运营在六12位系统本来是雷同情状卡塔 尔(阿拉伯语:قطر‎,这些重视是因为陆十四个人系统现已思忖到了这种连接状态。首先要知道64体系现已为叁拾人的应用程序考虑了运行三十五位程序的情状,这些情形便是WOW64。WOW64 是 Windows-32-on-Windows-64 的缩写。它为依存的 32 位应用程序提供了 叁11位的模拟,能够使大多数 32 位应用程序在没有必要校订的景色下运转在 Windows 陆13位版本上。它好像于旧的 WOW32 子系统,负担在 Windows 32 位版本下运转 16人的代码。
上边介绍一些编制程序中要用到的东西。
1。当然,这里您还必需用到一个正是,怎么样决断系统是叁九位系统或许六十四个人系统啊?假诺你要用小退换是必需了然未来到底是32,依旧64。IsWow64重返TRUE则是61位系统,不然为31人系统。code如下:VC测量检验通过typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS) (HANDLE, PBOOL);LPFN_ISWOW64PROCESS fnIsWow64Process; BOOL IsWow64() {     BOOL bIsWow64 = FALSE;     fnIsWow64Process = (LPFN_ISWOW64PROCESS) GetProcAddress(         GetModuleHandle(TEXT("kernel32")),"IsWow64Process");     if (NULL != fnIsWow64Process)     {         if (!fnIsWow64Process(GetCurrentProcess(),&bIsWow64))         {             // handle error             AfxMessageBox("IsWow64 error!");         }     }    return bIsWow64; }2。关于注册表的意况。若是你去看vista64的注册表会发以往先后的设置,卸载等地点,注册表有超大的改动。可是告诉你个好音讯是。你的次第中Wow64下运作。所以中间的改变,你不要理会,这些WOW64会帮您转移的。当然这几个只限于规范的后生可畏对注册表的岗位变动,具体还要本人多测量检验。那一个调换根本是由于,vista64中间安装的陆玖人程序跟三十五个人程序在装置地点方面有比超大的例外,因为多了个program file(x)。举例卸载程类别表:xp 位于如下地方:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionUninstallvista六十六人于如下地方:HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionUninstall但是你只要在vista下访谈如下地方HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionUninstall也是一直不难点的。
xp下实际的主次在计算机中的位贮存在:HKEY_LOCAL_MACHINESOFTWAREvista中是置身HKEY_LOCAL_MACHINESOFTWAREWow6432Node即使你在vista64下边依然访谈如下地方,HKEY_LOCAL_MACHINESOFTWARE你获取的实际就是vista下HKEY_LOCAL_MACHINESOFTWAREWow6432Node的列表。那当中实际是WOW举行了转移。所以,比超多这几个你是决不忧郁有标题。当然有些非标准的地点,恐怕有个别变化。可是别顾虑,那些超级少会用到的。
关于WOW64的介绍:
硬件本人持有 32 位宽容性情势,可以管理 IA-32 指令的莫过于推行,而 WOW 层处理诸如在 32 位和 64 位形式之间切换微机以至模拟 三十五个人系统的专门的学问。举个例子,32 位和 六16位程序有所分歧的注册表配置单元。还大概有贰个用于 30位二进制文件的不如的系统目录。64 位二进制文件依旧选用 System32 目录,由此,当 32 位应用程序安装到系统中时,WOW 层会确定保证将 三10个人二进制文件置于贰个新的目录 SysWOW64 中。那是经过如下格局完毕的:遵照料用程序是或不是运营在 WOW 下,截获对 API 的调用如 GetSystemDirectory卡塔尔国并重回适当的目录。相通的标题或者会存在于注册表中。因为 32 位和 64 位的 COM 服务器都能够安装在系统上,并献身同生龙活虎的类标记符 (CLSID) 下,由此 WOW 层需求将对注册表的调用重定向到适当的 32 位或 陆拾个人配置单元中。WOW 层也会管理注册表中一些区域里面包车型地铁镜像修改,以便使其更简明地支撑 32 位和 64 位代码之间的交互作用操作。WOW64 极度主要,因为当不关心质量和可伸缩性的标题时,它使您可以动用大大多现存的 32 位代码。它是二种情势的精品组合。您能够将你的服务迁移到 64 位,相同的时间将 Microsoft 管控台 (MMC) 配置管理单元保留为 32 位。Windows 陆11位版本包涵 MMC 的 32 位和 64 位的本子。当接纳保留管理工科具为 三12位时,进程间的报纸发表大概会凌驾一些难点,但是假若接口设计科学,诸如远程进程调用 (RPC) 的商量应该可以在 32 位和 64 位进度之间运维。有关 WOW64 的其它一些要求记住:它并非为务求高质量的应用程序而规划的。起码,WOW64 子系统需求将 32 位参数增加到 64 位,何况必要将 64 位的重返值截断为 三11个人。在最不佳的景观下,WOW64 子系统将急需打开基本功调用,涉及到的不可是到根本的转变,还应该有从Computer的 32 位宽容性格局到其本机 64 位情势的改换。在 WOW64 下运营时,应用程序将不可能妥本地开展调度。对于那么些你要将其保存为 三11人的应用程序来说,请在 WOW64 下测验它们。假诺品质否满意你的期待,您须求思忖将应用程序迁移到 陆拾二人。WOW64 是在客户格局下完成的,作为 ntdll.dll 和幼功之间的层。WOW64 及其帮衬的一些 DLL 仅仅是足以加载到 32 位进度中的 64 位的 DLL。对于有所别的情况,进度保持为纯进度。32 位的进度无法加载 64 位的 DLL,反之亦然。看来上边的您大概就比较清楚了啊。平时程序就不须要哪些移植,但是只要牵涉到驱动方面包车型大巴东西,比方设置驱动等,那么那些是须求移植的。因为驱动是设置到功底来进展运作的,所以三14个人的驱动是特别的。

1. 采取钩子SetWindowHookEx注入时,设置钩子的代码必得和钩子回调函数在注入DLL中,何况调用CallNextHookEx时首先个参数必需为钩子的句柄,不然唯有二个进度响应钩子。

...

HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftWindows NTCurrentVersionWindowsAppInit_DLLs

在XP下只要AppInit_澳门金莎娱乐手机版 ,DLLs有值就能够注入。而在win7下还必得安装LoadAppInit_DLLs (REG_DWOCR-VD) 的值为1才会注入。

本文由金沙澳门官网网址发布于澳门金莎娱乐手机版,转载请注明出处:澳门金莎娱乐手机版Dll注入的多少个注意事项,

关键词: