Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 如何找出客户机可执行文件的/SUBSYSTEM值?_Windows_Linker_Console_Subsystem - Fatal编程技术网

Windows 如何找出客户机可执行文件的/SUBSYSTEM值?

Windows 如何找出客户机可执行文件的/SUBSYSTEM值?,windows,linker,console,subsystem,Windows,Linker,Console,Subsystem,我有一个Windows DLL库,可以由不同的客户端应用程序使用,包括GUI和控制台。有没有一种方法可以通过编程方式找到客户机应用程序类型?我对是否实际连接了控制台不感兴趣。当客户端应用程序可以告诉您一些琐碎的信息时,请始终避免以艰难的方式查找信息。此外,可执行文件的实际类型可能无法准确表示可执行文件的使用方式,因此,行为上的任何变化都可能会给程序员带来非常恶劣的惊喜。考虑一下,例如,A。也许我应该在我的问题上不那么具体,看起来这个不像我希望的那么简单。我真正的目标是找出例如stdout是否处于

我有一个Windows DLL库,可以由不同的客户端应用程序使用,包括GUI和控制台。有没有一种方法可以通过编程方式找到客户机应用程序类型?我对是否实际连接了控制台不感兴趣。

当客户端应用程序可以告诉您一些琐碎的信息时,请始终避免以艰难的方式查找信息。此外,可执行文件的实际类型可能无法准确表示可执行文件的使用方式,因此,行为上的任何变化都可能会给程序员带来非常恶劣的惊喜。考虑一下,例如,A。也许我应该在我的问题上不那么具体,看起来这个不像我希望的那么简单。我真正的目标是找出例如stdout是否处于无效状态。对于控制台应用程序,stdout被正确初始化,而对于GUI程序,stdout处于无效状态,除非应用程序按照进行修复。如果stdout无效,那么_get_osfhandle()函数似乎会为_fileno(stdout)返回一个未记录的错误代码-2,但由于这是未记录的,我不确定我能在多大程度上依赖它。