[ Last edited by zqlcch on 2007-1-9 at 05:45 AM ]作者: happybasic 时间: 2007-1-9 07:05 呵呵,楼上兄弟莫介意。。。我是真希望有一个更好的QB开发库, 因为QBWIN停止开发了,而且作者现在一直很忙... Hoker一直建议他开源,目前尚无消息。。。
代码如下:
//先调用DOS中断21的子功能62来取PSP的地址
'$INCLUDE: 'e:\programs\qb71\src\qbx.bi'
CLS
DIM s AS RegType
s.ax = &H6200
CALL Interrupt(&H21, s, s) //调用中断
//定义段地址
DEF SEG = s.bx
//从2C取两个字节,这两个字节就是环境变量的段地址
s1 = PEEK(&H2C)
PRINT s1
s2 = PEEK(&H2D)
PRINT s2
//这里计算段地址
DEF SEG = s2 * 16 * 16 + s1
//这里取环境变量的内容,自身的文件名是以01,00打头的,查找以01,00找头,后面的一串以0结尾的字符串就是自己的文件,自己补些代码吧
//这里我偷懒了,把全部都取出来了,自己修改吧,要喝酒去了
a$ = ""
FOR aa = 0 TO 1855
a$ = a$ + CHR$(PEEK(aa))
NEXT
PRINT a$
汗,QB还是先天不足,操作起来实在麻烦,在C或PASCAL中一个指针就搞定了。。。。。。
[ Last edited by zqlcch on 2007-1-10 at 10:40 AM ]作者: happybasic 时间: 2007-1-11 22:45 做好了,去看看吧!多提提意见! http://yxbasic.51.net/library/qbch.htm作者: 本是 时间: 2007-1-11 23:17 RE 第4楼:“调用XMS也没有现成的包可以用”
1- PB 3.2 supports true pointer variables. Traditionally, a Basic
programmer had to use a combination of DEF SEG and PEEK and POKE to
access memory. Pointers are not only more flexible, they also make
data access much faster.
[ Last edited by 本是 on 2007-1-11 at 11:21 PM ]作者: zqlcch 时间: 2007-1-12 00:06 从PB的主页的介绍上看,和其他BASIC比确实算是比较POWER了,把原来Basic和其他高级语言相比所缺少的指针操作、位操作、汇编给补上了。
但是要$99啊,还不提供帮助,打印版的PDF还要$29,这未免也太那个了吧,更何况PBDOS似乎还不支持面向对象。
happybasic老兄倒是可以考虑去找一下破解版
这么久了,怎么也不见写rtCell的楼主露一下脸。。。。
[ Last edited by zqlcch on 2007-1-12 at 12:23 AM ]作者: fastslz 时间: 2007-1-12 01:44