2012-02-28 98 views
0

我一直在尝试理解“挂钩”API的概念,并且目前面临一个问题。我希望这里的专家能够清除它:API挂钩差异

通过浏览头文件,我发现LoadLibrary函数实际上映射到以下两种之一:LoadLibraryW或LoadLibraryA,基于编译期间使用的标志(UNICODE或ASCII,分别)。现在,如果我已经明确地挂钩了API'LoadLibraryA',那么如果使用UNICODE标志编译我的挂钩函数就会得到控制权?

如果有人能够解释或指向我的链接,详细解释在这种情况下钩子是如何工作的,那将会很棒吗?编译标志,字符集,区域设置,国际化如何影响API(如LoadLibrary或CreateFile)的挂钩?

我目前在韩国(原文为英国),由于某种原因,我的某些应用程序无法正常工作,我明天有演示。我认为上述疑问是我面临的问题的原因。

回答

0

我认为你需要仔细阅读这本圣经的API钩Hooking in theory它解释了像钩的不同方法,很多图...的一切,也是这一个example。我的建议是使用LoadLibraryW,因为它是Acsii的超集。 再见