发现一个很奇怪的现象--关于VB程序的内存占用

原创 2005年04月23日 00:56:00

我们先看看下面这个简单的程序:
一个form,没有任何控件

Private Sub Form_Load()
Me.WindowState = 1
Me.Hide
End Sub


我们把这个程序稍作修改,加入一个timer控件:

Dim formhide As Boolean

Private Sub hideform()
formhide = True
Me.WindowState = 1
Me.Hide
End Sub

Private Sub Form_Load()
Timer1.Interval = 1000
Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()
If formhide = False Then
hideform
Timer1.Enabled = False
End If
End Sub


你认为哪个程序占用的内存资源少呢?
大家肯定会说是第一个程序,因为第二个程序用了一个Timer控件来调用hideform这个过程,这绝对是多此一举。一开始我也这么认为。
但事实上第二个程序占用的内存比第一个少!不信你可以试试:
建立两个工程Project1.vbp和Project2.vbp,Project1里是form1,Project2里面是form2
在form2里面加入一个timer控件,然后在form1和form2中分别输入以上代码
编译成Project1.exe和Project2.exe
运行这两个程序打开windows任务管理器,找到Project1和Project2比较一下
我这里测试的结果是Project1占用4096K的内存,而Project2只占用1020K!

在内存中运行EXE可执行文件(Delphi7源代码)

  • 2009年02月18日 11:50
  • 621KB
  • 下载

从内存启动一个EXE(VB源码)

  • 2008年10月04日 09:03
  • 7KB
  • 下载

VB内存中运行EXE文件

  • 2013年01月30日 19:58
  • 7KB
  • 下载

关于用VB读写内存的方法

导读:   不象C语音,VB不会自动包括普通的API函数的声明,因此我们必须把他们加入我们的项目文件。在几乎所有的修改器中会使用到6个主要的函数,讨论如下:   1. FindWindow(Class...
  • adm1n1
  • adm1n1
  • 2008年01月31日 12:49
  • 1835

VB窗口信息获取与内存操作

  • 2017年08月04日 19:02
  • 134KB
  • 下载

VB获取内存方法

  • 2015年09月07日 11:21
  • 2KB
  • 下载

C/C++编译的程序占用的内存分为以下几个部分

转自: http://blog.chinaunix.net/uid-9688646-id-3087625.html 一个由C/C++编译的程序占用的内存分为以下几个部分  1、栈区(s...
  • niumeng06
  • niumeng06
  • 2015年03月29日 01:51
  • 1412

【洛谷 1135】 奇怪的电梯

思路广搜题,每次遇到满足条件的就加入队列。代码#include using namespace std; struct node{ int now, step; }; int n, a, b...
  • yhf_2015
  • yhf_2015
  • 2016年10月24日 19:22
  • 174

vb字符串在内存中的分布?

据说vb6中,字 符串以以UNICODE方式存储,所以Private Type UDT lngM1 As Long lngM2 As Long strM3 As String * 1...
  • jiftlixu
  • jiftlixu
  • 2010年03月06日 13:05
  • 1359

VB写的小工具,用于查看本机CPU,内存使用情况,网络情况

  • 2010年05月24日 12:49
  • 19KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:发现一个很奇怪的现象--关于VB程序的内存占用
举报原因:
原因补充:

(最多只允许输入30个字)