问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

什么是API函数AllocConsole和AttachConsole

发布网友 发布时间:2022-06-01 20:47

我来回答

1个回答

热心网友 时间:2023-10-16 04:30

好了,所不同的是:AllocConsole()将创建一个新的控制台(以及连接到它)AttachConsole( ATTACH_PARENT_PROCESS /* -1 */)不会创建一个新的控制台,它会附加到父进程的现有的控制台。 在优先种情况下,你会得到一个全新的控制台窗口,在第二种情况下,现有的控制台窗口。 当然,如果你已经连接到控制台(即 CodeGo.net,你是从CMD.EXE启动了控制台程序)没有太大的区别-你会得到一个错误,与任何API。 另外请注意,只是你从一个控制台分离没有关系“的分离控制台将-例如,如果你是从一个cmd窗口启动了控制台程序,这个窗口基本上阻止,直到你的进程结束。 代码一起玩:
int main( int argc, char* argv[])
{
int ch;
BOOL bResult;
printf( "default console\n");
ch = getchar();
bResult = FreeConsole();
bResult = AllocConsole();
printf( "AllocConsole()\n");
ch = getchar();
bResult = FreeConsole();
bResult = AttachConsole( ATTACH_PARENT_PROCESS);
printf( "AttachConsole( ATTACH_PARENT_PROCESS)\n");
ch = getchar();
return 0;
}

2. 我不认为有一个调用的函数CreateConsole,但有AllocConsole。 假设这就是我认为不同的是,AttachConsole(ATTACH_PARENT_PROCESS)可以返回ERROR_INVALID_HANDLE如果父进程没有控制台。 尝试运行从迅速而开始这段代码->运行:
#include <windows.h>
#pragma comment ( lib, "user32.lib" )
int main()
{
BOOL b;
char msg[1024];
b = FreeConsole();
sprintf(msg, "%d", b);
MessageBox(NULL, msg, "FreeConsole", 0);
b = AttachConsole(ATTACH_PARENT_PROCESS);
sprintf(msg, "%d", b);
MessageBox(NULL, msg, "AttachConsole", 0);
return 0;
}
从包含提示,盒子运行时1显示,这意味着无论从通话开始时运行->运行,优先个框包含1和第二包含0,也就是说只有在优先次调用第二个失败的explorer.exe(这是从开始启动的进程的父->运行)不具有控制台。
3. 因为WINAPI它已经有一段时间,但我翻查了MSDN和我没能找到CreateConsole API函数。所以我的猜测是,CreateConsole是传统的东西,并已取代AttachConsole。因此,有可能是没有区别的,但CreateConsole可能已经被废弃了。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
抖音弹幕怎么关掉?怎么关闭抖音弹幕? 惠普LaserJet P3005D是否支持B5纸的双面打印? word打印出图片总是缺一部分怎么办-word打印图片不完整怎么解决_百度... 理想one哪里产的车辆? 抚州抚州ONE在哪里? one地址在哪里? 如何在图片上写字(如何在图片上添加文字) 网商贷为什么钱没到账 高级经济师职称怎么评 高级经济师需要评审吗 一什么里成语 java中的这句话怎么理解,api看了半天还是不太清楚,麻烦大神举个形象点的例子解释一下吧 一什么什么里成语 啥里挑一 什么里如一成语 如果交往了三个月才知道对方是渣男,又是花天酒地,出轨无缝连接。能马上放下吗? 怎么做小包装的洞庭鱼仔 VB.Net怎么调用API函数 语言是VB。是VB.NET不是VB! 香辣毛毛鱼怎么做好吃,香辣毛毛鱼的吃法 支付宝 api resultcallback 时间,什么时候不回调 安卓系统怎么在win10双系统 什么手机有win系统或者XP的,还有安卓系统,意思就是双系统,可以切换的。 什么时候有安卓和Win10双系统手机 手机win7 安卓双系统 如何切换 现在有装安卓系统和WP系统的手机吗? 人体的骨骼分为中轴骨和四肢骨两部分 安卓+windows双系统的手机与普通安卓手机哪个好? 配置windows update失败 还原更改 请勿关闭计算机 怎么打开系统界面 骨骼可以分为有: Can 和may的具体区别是什么? 谁能打个比喻说明API函数是干什么的?谢谢了! 一什么什么里成语? 什么里什么云一个秋天的词语 一什么里的成语 左轮(电吉他!!)教程网盘谢谢,请注意,是电吉他! 新手,一点乐理不懂,左轮吉他和大伟吉他,该跟着哪个学 左轮吉他初级入门教程下载 一个爱国的故事,要简短,具体过程。想詹天佑那些的。烈士也行 200~240! 《詹天佑》有感怎么写? 什么是货币的经济发行? 苹果6s微信震动但没有消息是怎么回事? 智能型电压互感器校验仪有哪些功能特性? 查字的部首? 手机芯片是不是苹果的最好? 查一部首怎么读 用拼音怎么打出解散 解散拼音怎么打啊 《山中访友》有多少多音字?分别是什么? 解散,五笔怎么打 春秋四季万物消长中的长的读音