CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

BCB怎么写不带窗体的程序,就是那种体积只有几K的程序

楼主ihpled(笋炒肉)2005-05-11 22:08:42 在 C++ Builder / 基础类 提问

同上 问题点数:27、回复次数:13Top

1 楼kangji(尾鱼头)回复于 2005-05-12 08:52:51 得分 0

直接用API写,跟vc一样,自己处理全部消息Top

2 楼Waiting4you(毛毛)回复于 2005-05-12 09:12:29 得分 0

是控件台程序吗?其于Windows的程序好像都是带窗体的,自己用API写吧,WIN32帮助里有例子的Top

3 楼pp616(坏蛋)回复于 2005-05-12 09:32:22 得分 0

有人想干坏事   :)Top

4 楼Maconel(Maconel)回复于 2005-05-12 09:34:56 得分 27

windows程序也可以不带窗体,用api来编写,进入winmain函数,自己写消息循环。  
  用vc向导可以建立一个这样的简单的工程。  
  如果嫌麻烦,可以使用bcb的vcl,比较简单。  
   
  bcb建立一个新工程,选project   -   remove   from   project,  
  将unit1.cpp删掉。  
  然后打开project1.cpp,在  
  Application->Run();  
  下边写你的代码即可。  
  Application->Run();  
  就是进入消息循环。Top

5 楼NetSpider9804040(网络蛛蛛)回复于 2005-05-12 10:16:43 得分 0

楼主问的是不是想写C一样的控制台程序,若是这样的话,从BCB的File->New->Other->New   Items->New->Console   Wizard;将use   WCL去掉勾。Top

6 楼yesry(噎死你)回复于 2005-05-12 10:58:55 得分 0

vc可以做到只有几k吗?  
  记得bc++4.5,5.02的时候就算WinMain没有代码至少也要50k.Top

7 楼Waiting4you(毛毛)回复于 2005-05-12 11:07:15 得分 0

To   Maconel(Maconel)   :  
   
  那还要写消息处理吗?我们从哪里接收消息呢?还会有WM_这类消息吗?  
   
  Top

8 楼Maconel(Maconel)回复于 2005-05-12 13:45:39 得分 0

Application->Run();  
  就是进入消息循环。  
  如果想处理消息,可以自己写一个消息处理函数AppMessage,并设置  
  Application->OnMessage   =   AppMessage;  
  但是注意,AppMessage应该是一个类的成员函数,比如这样:  
  class   TMessageEvent  
  {  
  public:  
          void   __fastcall   AppMessage(tagMSG&   msg,   bool&   Handle)  
          {  
                  switch   (msg.message)  
                  {  
                  case   WM_XXX:  
                          //处理  
                          MessageBox(NULL,   "收到消息",   "",   0);  
                          break:  
                  ...  
                  }  
          }  
  };  
  在Application->Initialize();下边写上  
  TMessageEvent   me;  
  Application->OnMessage   =   ms.AppMessage;  
  即可。不过没有窗体的程序,估计也没谁给他发什么消息。  
  还有就是run那句过后,如果没有收到消息,就会退出程序,因此应该用一个循环来保证不会退出。  
  简单起见,我在run后边加了句  
  ShowMessage("exit");  
  这样不关这个窗体就不会退出程序,然后就可以看到会弹出“收到消息”那个窗体。Top

9 楼COKING(天晴)回复于 2005-05-12 15:22:36 得分 0

几K?BCB是无法做到的Top

10 楼unsigned(僵哥(发站内消息,请附上链接或问题说明,否则不予回复))回复于 2005-05-12 16:35:45 得分 0

不要使用BCB的编译器,而直接写汇编代码,使用如MASM之类的编译器去编译就好了。Top

11 楼gpg(snake)回复于 2005-05-12 22:11:03 得分 0

只考虑功能实现,把窗口隐藏几可以了。然后你在FORM里写你的东西,简单,容易实现。  
  至于体积,需要考虑吗?(别浪费自己的精力在这上面)Top

12 楼mywfool(阿赖耶识)回复于 2005-05-12 23:23:53 得分 0

dev   c++可以的呀,最小的只有4、5K大小  
  Top

13 楼ihpled(笋炒肉)回复于 2005-05-16 20:46:36 得分 0

谢谢大家   结贴Top

相关问题

  • BCB真够弱::在主窗体中new了一个子窗体,再在此子窗体中new一窗体,运行时居然出现stack overflow,我ft了!!!
  • 窗体
  • 窗体
  • 窗体
  • 窗体
  • 求救,关于bcb制作窗体组件的问题
  • 在bcb中如何管理文件和窗体?
  • 用BCB设计的窗体最大化后面目前非...
  • BCB新手的问题:关于窗体大小
  • 编制几十k的程序,还要有窗体,不用Tform类怎么遍?

关键词

  • c++
  • bcb
  • 消息
  • 函数
  • 代码
  • 循环
  • application
  • vc
  • api
  • 窗体

得分解答快速导航

  • 帖主:ihpled
  • Maconel

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo