2011-01-07 41 views
1

哪些win32 API调用使用这些函数(如果有的话)?这些功能做哪些系统调用?

_itoa_s(), strcat_s() 
+0

这些都不是Win32函数,他们是微软的CRT的一部分。 – 2011-01-07 10:45:34

+2

看看源'%PROGRAMFILES%\微软的Visual Studio 10.0 \ VC \ CRT \ SRC \ xtoa.c`和`%PROGRAMFILES%\微软的Visual Studio 10.0 \ VC \ CRT \ SRC \ tcscat_s.inl`。 – dalle 2011-01-07 11:02:27

回答

1

只有一个,真的,SetUnhandledExceptionFilter()。接着是TerminateProcess()。当函数检测到缓冲区溢出时,它位于代码路径中。这可以防止通过挂钩未处理的异常过滤器并有意造成访问冲突来激活恶意软件。不幸的是,当溢出被一个简单的编程错误触发时,也很难做到定制崩溃报告。代号为VC/CRT/gs_report.c

4

可能没有。

这些功能是MicroSoft 安全版本的C标准itoastrcat。这些C函数是C库的一部分,而不是系统库。他们提供的功能可以完全实现,无需任何系统调用。

但最终,我完全不知道,如果他们进行系统的呼叫。

1

您只需踏入他们使用调试器,看看他们做什么。乍一看,他们不做任何系统调用,这是我所期望的。

1

我会非常关注,从性能的角度来看,如果这种“基础”设施所需的系统调用。我对你的问题没有明确的答案,但常识会说:没有。