【问题标题】:What is the difference between win32 console and command prompt?win32控制台和命令提示符有什么区别?
【发布时间】:2015-02-05 14:00:09
【问题描述】:

我正在阅读有关控制台应用程序的信息,但我不知道命令提示符和 win32 控制台是如何连接的。它们是一样的吗?

【问题讨论】:

    标签: cmd windows-console


    【解决方案1】:

    您的计算机有许多 控制台模式程序。它只有一个 Cmd.exe。哪个是命令解释器,它会显示一个提示,让你输入命令来启动其他程序。

    您应该使用 Visual Studio 中包含的 Dumpbin.exe。使用它的 /headers 选项来查看可执行文件的标题。这样的文件指示它要在哪个子系统上运行。您可以遇到三种常见的情况:

    • 1,显示为“本机”。以设备驱动程序使用的本机 Windows 操作系统为目标,例如您在 c:\windows\system32\drivers 中找到的那些。本机操作系统类似于 VMS,这是 Dave Cutler 和他的团队在为 DEC 工作时创建的操作系统。它只是部分记录,只是您编写驱动程序所需的部分。
    • 2,显示为“Windows GUI”。使用 CreateWindow() 创建自己的窗口的 Win32 进程。喜欢 Notepad.exe
    • 3,显示为“Windows CUI”。一个需要控制台窗口的 Win32 进程,操作系统会在启动程序之前自动创建它。喜欢 Cmd.exe

    Windows 曾经有更多的子系统,例如 OS/2 和 Posix,但它们不再使用了。 Win32 以压倒性优势获胜。原生 OS 和 api 层的区别也是微软在 OS 上创新的核心方式,Win32 api 是一成不变的,永远无法改变,只能添加。他们可以根据需要更改本机操作系统。 Vista 是最后一个有很大变化的版本,主要版本 6。Windows 2000 是之前的版本,主要版本 5。

    【讨论】:

      【解决方案2】:

      我引用Wikipedia here。 " Win32 控制台是 Windows API 系统中的文本用户界面实现,它运行控制台应用程序。Win32 控制台具有屏幕缓冲区和输入缓冲区,可作为窗口或文本模式屏幕使用,并带有切换回可以通过 Alt-Enter 键来实现。"
      现在,这实质上意味着一个 win32 控制台实际上托管了 cmd(也称为命令提示符)以与操作系统交互。如果我错了,请 Windows 大神纠正我。但这就是它的意思。一个是应用程序,另一个是应用程序的接口(win32 控制台)。

      【讨论】:

        猜你喜欢
        • 2015-01-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-15
        • 2016-04-18
        • 2016-10-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多