附加进程到控制台

函数功能:

AttachConsole 函数用于附加调用进程到指定进程的控制台。

API 函数原型:

注释:In说明该参数是输入的。

BOOL WINAPI AttachConsol(  
  _In_ DWORD dwProcessId  
);
);

参数解析:

|参数| 含义|

dwProcessId 指定进程的标识符,该参数可以是下列值
pid 使用指定进程的控制台
ATTACH_PARENT_PROCE(DWORD)-1 使用当前进程的父进程的控制台

返回值:

  1. 如果函数调用成功,返回值是非 0;

  2. 如果函数调用失败,返回值是 0。

若想获得更多的错误信息,请调用 GetLastError 函数。

备注:

  1. 一个进程最多只能附加一个控制台。如果调用进程已经附加了一个控制台,则返回错误代码 ERROR_ACCESS_DENIED (5)。如果指定进程没有控制台,则返回错误代码 ERROR_INVALID_HANDLE (6)。如果指定进程不存在,则返回错误代码 ERROR_GEN_FAILURE (31)。

  2. 可以调用 FreeConsole 函数分离进程和控制台。如果其他进程共享该控制台,则该控制台不能被销毁,但是分离的进程已不能引用该进程了。当最后一个附加控制台的进程停止或者调用 FreeConsole 函数,该控制台可以关闭。进程调用 FreeConsole 函数之后,可以调用 AllocConsole 函数创建一个新的控制台或者调用 AttachConsole 函数附加到其他控制台。

  3. 定义 _WIN32_WINNT 为 0x0501 或更高版本,以编译使用这个函数的应用程序。更多相关信息,请查阅 Using the Windows Headers。

需求:

Minimum supported client Windows XP [仅桌面应用程序]
Minimum supported server Windows 2003 服务器版 [仅桌面应用程序]
Header Wincon.h (包含于 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

results matching ""

    No results matching ""