Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site bnrmtv.UUCP Path: utzoo!watmath!clyde!burl!ulysses!gamma!epsilon!zeta!sabre!petrus!bellcore!decvax!decwrl!amdcad!amdahl!bnrmtv!connery From: connery@bnrmtv.UUCP (Glenn Connery) Newsgroups: net.micro.pc Subject: Re: Renaming subdirectories Message-ID: <241@bnrmtv.UUCP> Date: Tue, 28-Jan-86 14:49:55 EST Article-I.D.: bnrmtv.241 Posted: Tue Jan 28 14:49:55 1986 Date-Received: Sat, 1-Feb-86 00:32:02 EST Organization: Bell Northern Research, Mtn. View, CA Lines: 63 The following will do what you want. Just change to the parent of the directory you are trying to rename and run it. Think this came from PC Tech Journal. A debug session to create a similar program was in a recent PC Magazine... PAGE ,132 ; ; RENDIR - renames directories or volume labels... using DOS function ; 17H (FCB call). thus the program only works for directories ; immediately under the current one. ; ; from PC Tech Journal, April 1985, p. 41 ; COM SEGMENT ASSUME CS:COM,DS:COM ORG 5CH FCB1 LABEL BYTE DRIVE1 DB ? NAME1 DB 11 DUP(?) ORG 6CH FCB2 LABEL BYTE DRIVE2 DB ? NAME2 DB 11 DUP(?) ORG 100H RENDIR PROC MOV DX,OFFSET INVDR$ TEST AL,AL JNZ ERROR MOV DX,OFFSET INVPAR$ CMP NAME1,' ' JE ERROR CMP NAME2,' ' JE ERROR MOV SI,OFFSET FCB1 MOV DI,OFFSET OLDN MOV CX,12 REP MOVSB MOV SI,OFFSET NAME2 MOV DI,OFFSET OLDN+11H MOV CX,11 REP MOVSB MOV DX,OFFSET XFCB MOV AH,17H INT 21H TEST AL,AL JZ EXIT MOV DX,OFFSET INVNAM$ ERROR: MOV AH,9 INT 21H EXIT: INT 20H RENDIR ENDP INVDR$ DB 'Invalid drive id$' INVPAR$ DB 'Bad syntax: [d:]oldname newname$' INVNAM$ DB 'Name not found or already exists$' XFCB DB 0FFH ;Extended FCB ID BYTE DB 5 DUP(0) ATTR DB 18H ;Dirs & Volume Labels OLDN DB 37 DUP(0) COM ENDS END RENDIR ----- Glenn