回 帖 发 新 帖 刷新版面

主题:老大,我剽窃了你的文件改名程序,可是不能用喔

调用中断后返回值是3喔,搞不懂是怎么回事喔。

你置顶的中断我也看了,
把例程照搬过来用,说变量格式不对。call 中断的那一句
好像是变量没定义好,
因为这两天脑袋不大行,所以没精神去看QB.BI的源文件,
麻烦老大改一改,顺便把完整的长文件名改名程序给我剽窃多一次吧,拜托。

回复列表 (共9个回复)

沙发

文件改名是很简单的,为了确保正确无误,我在WIN98的MSDOS方式下用QB45运行成功!
然后给你发上来
假如你的同目录下有各test1.txt的这个文件,你运行后会改名为testabcdefgh.txt
OldFile$="test1.txt"
NewFile$="testabcdefgh.txt"
IF RenFile%(OldFile$,NewFile$) = 0 THEN PRINT "改名成功 ok"


FUNCTION RenFile% (OldFile$, NewFile$)
  '文件改名:入口AH=56 DS:DX=旧文件地址 ES:DI=新
  'ax% = 0: bx% = 1: cx% = 2: dx% = 3: bp% = 4
  'si% = 5: di% = 6: flags% = 7: ds% = 8: es% = 9
  DIM Reg%(9)
  Old$ = OldFile$ + CHR$(0)
  New$ = NewFile$ + CHR$(0)
  Reg%(8) = VARSEG(Old$)
  Reg%(3) = SADD(Old$)
  Reg%(9) = VARSEG(New$)
  Reg%(6) = SADD(New$)
  Reg%(0) = &H7156
  CALL INT86XOLD(&H21, Reg%(), Reg%())
  FileRen% = Reg%(0)
END FUNCTION

板凳

嗯,可以了,谢谢,改天赚大钱了再付你版权费。

不过不明白7.1的就用不了
而且7.1里面还取消掉int86xold这个调用了

3 楼

不是,你qb71用qbx.bi,
可以用啊

4 楼

一言惊醒笨中人,谢谢谢谢。

5 楼

不过给你一说,才发觉我的QB7.1目录下没有这个文件qbx.bi喔
我以前竟然把qb4.5目录下的qb.bi复制到qb7.1目录下去用了
你手上有没有给我参考一下喔?

6 楼

怎么没有?qbx.exe所在地的..\src里就有啊

7 楼

岂有 些 理,又不早两天说,我前天才发现了,
在dos系统里用dir/s都没找到,
才发现我的7.1目录竟然是4.5的目录
我只是把qbx几个文件覆盖过来用的。
狂倒了。

8 楼

我用的是MS-BASIC PDS 7.1完整班,里面第一层文件家(注意 文件家QB45是我升级时倍粉出的):
[.]         [..]         [BIN]      [BINB]       [HELP]
[LIB]       [QB45]       [SRC]

9 楼

我知道的,
我根据你说的到火客去跑了一趟了。

我来回复

您尚未登录,请登录后再回复。点此登录或注册