win32程序和控制台程序编程有什么区别?

win32程序和控制台程序编程有什么区别?,第1张

win32应用程序是指可以在32位或以上Windows系统中运行的程序,概念比windows窗体大,严格说来,窗体程序也是win32应用程序。你问的是vs环境中不同的程序类型的区别吧。win32程序是利用编程语言直接调用windows api编写的程序,可以在任何装有正确windows的机器上运行,程序员发挥的空间也最大,能实现在该 *** 作系统中可以编程实现的任何功能。 \x0d\x0a而.net的窗体应用程序是一种托管代码,无论你是用c++\c#还是vb编写,只能在.net环境中应用,就是说你编译好的软件在没有.net framework的机器上是不能运行的,而且功能的实现也要受framework的限制,不能随心所欲。\x0d\x0a可视化的除了窗体程序,你也可以选择mfc,代码编写量比纯api编程要小的多,尽管比.net复杂,但应用起来更灵活,而且这个是不依赖.net框架的。\x0d\x0awin32包括mfc可以调用 *** 作系统允许的任何程序(甚至可以通过某种技术调用 *** 作系统不允许的 *** 作如hook api技术),当然可以调用窗体程序。

Win32控制台程序可以用Windows

API

来设置

用于控制台窗口 *** 作的API函数如下:

GetConsoleScreenBufferInfo

获取控制台窗口信息

GetConsoleTitle

获取控制台窗口标题

ScrollConsoleScreenBuffer

在缓冲区中移动数据块

SetConsoleScreenBufferSize

更改指定缓冲区大小

SetConsoleTitle

设置控制台窗口标题

SetConsoleWindowInfo

设置控制台窗口信息

此外,还有窗口字体、显示模式等控制函数,这里不再细说。下列举一个示例,程序如下:

#include

#include

#include

void

main()

{

HANDLE

hOut

=

GetStdHandle(STD_OUTPUT_HANDLE)

//

获取标准输出设备句柄

CONSOLE_SCREEN_BUFFER_INFO

bInfo

//

窗口缓冲区信息

GetConsoleScreenBufferInfo(hOut,

bInfo

)

//

获取窗口缓冲区信息

char

strTitle[255]

GetConsoleTitle(strTitle,

255)

//

获取窗口标题

printf("当前窗口标题是:%s\n",

strTitle)

_getch()

SetConsoleTitle("控制台窗口 *** 作")

//

获取窗口标题

_getch()

COORD

size

=

{80,

25}

SetConsoleScreenBufferSize(hOut,size)

//

重新设置缓冲区大小

_getch()

SMALL_RECT

rc

=

{0,0,

80-1,

25-1}

//

重置窗口位置和大小

SetConsoleWindowInfo(hOut,true

,&rc)

CloseHandle(hOut)

//

关闭标准输出设备句柄

}

更多请看

http://hi.baidu.com/onlywater/blog/item/917981822ec5b8ba6d81192e.html

win32应用程序:是指窗口类的,即桌面应用系统,有图形化界面,如下图:

win32控制台:是指运行在黑框下的,像cmd之类的

都属于窗口方式!只是开发方式不一样罢了!  Win32是直接用API开发,而MFC是微软把API封装成一个一个的类,便于开发!

什么是Web项目:

web项目通俗的说就是在服务器上跑的项目,页面是通过服务器上的程序运算所得到的结果。常见的web项目按计算机语言分,有:Java Web(Java EE)、ASP.Net、PHP项目等,用户通过浏览器进行访问。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11021178.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存