[futurebasic] FN Folder

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : November 1998 : Group Archive : Group : All Groups

From: Chris Stasny <staz@...>
Date: Fri, 20 Nov 1998 13:13:21 -0600
Here is the long sought after folder function.

'
'      Function:FBFolder
'
'=========================================
CLEAR LOCAL MODE
DIM FolderName$,FolderVol%,ResultVol%
DIM pBlock;128
DIM PBlk&,OsErr
LOCAL FN FBFolder(FolderName$,FolderVol%)
  '---------------------------------------
  PBlk& = @pBlock
  PBlk&.ioVRefNum%  = FolderVol%                  'Try Folder Vol
  LONG IF LEN(FolderName$)
    PBlk&.ioFileName& = @FolderName$              'Try folder name
    OsErr = FN OPENWD(PBlk&)
    LONG IF OsErr
      LONG IF FolderVol%
        FolderVol% = 0                            'Reset Vol
        LONG IF FN DIRCREATE(PBlk&) = _NoErr
          PBlk&.ioDirID& = 0
          LONG IF FN OPENWD(PBlk&) = _NoErr
            FolderVol% = PBlk&.ioVRefNum%
          END IF
        END IF
      XELSE
        PBlk&.ioDirID& = 0
      END IF
    XELSE
      FolderVol% = PBlk&.ioVRefNum%               'Set Volume
    END IF
  END IF

  PBlk&.ioFileName& = 0                           'Reset Name
  LONG IF FolderVol%
    OsErr = FN SETVOL(PBlk&)
  XELSE
    IF OsErr = 0 THEN OsErr = FN GETVOL(PBlk&)
  END IF
  '
  IF OsErr = 0 THEN ResultVol% = PBlk&.ioVRefNum%
  '
END FN = ResultVol%



In case you are interested, my dog now has an email address. You can write
to her at summer@.... Don't expect a reply tho. She can't read.

-STAZ   ~)~

--------------------------------------------------------------
STAZ Software * 4387 Leisure Time Dr * Diamondhead, MS 39525
--------------------------------------------------------------
Orders: 800-348-2623      EMail http: //www.stazsoftware.com
  Tech: 228-255-7085             FAX: 228-255-7086
--------------------------------------------------------------