Legacy Documentclose button

Important: The information in this document is obsolete and should not be used for new development.

Previous Book Contents Book Index Next

Inside Macintosh: Files /
Chapter 2 - File Manager / File Manager Reference
Low-Level HFS Routines / Opening Files


PBHOpenDF

You can use the PBHOpenDF function to open the data fork of a file.

FUNCTION PBHOpenDF (paramBlock: HParmBlkPtr; async: Boolean): 
                     OSErr;
paramBlock
A pointer to a basic HFS parameter block.
async
A Boolean value that specifies asynchronous (TRUE) or synchronous (FALSE) execution.
-->ioCompletionProcPtrA pointer to a completion routine.
<--ioResultOSErrThe result code of the function.
-->ioNamePtrStringPtrA pointer to a pathname.
-->ioVRefNumIntegerA volume specification.
<--ioRefNumIntegerA file reference number.
-->ioPermssnSignedByteThe read/write permission.
-->ioDirIDLongIntA parent directory ID.

DESCRIPTION
The PBHOpenDF function creates an access path to the data fork of a file and returns a file reference number in the ioRefNum field. PBHOpenDF is exactly like the PBHOpen function except that PBHOpenDF allows you to open a file whose name begins with
a period (.).

You can open a path for writing even if it accesses a file on a locked volume, and no error is returned until a PBWrite, PBSetEOF, or PBAllocate call is made.

If you attempt to open a locked file for writing, PBHOpenDF returns the result code permErr. If you request exclusive read/write permission but another access path
is already open, PBHOpenDF returns the reference number of the existing access path
in ioRefNum and opWrErr as its function result. You should not use this reference
number unless your application originally opened the file.

ASSEMBLY-LANGUAGE INFORMATION
The trap macro and routine selector for PBHOpenDF are
Trap macroSelector
_HFSDispatch$001A

RESULT CODES
noErr0No error
nsvErr-35No such volume
ioErr-36I/O error
bdNamErr-37Bad filename
tmfoErr-42Too many files open
fnfErr-43File not found
opWrErr-49File already open for writing
permErr-54Attempt to open locked file for writing
dirNFErr-120Directory not found or incomplete pathname
afpAccessDenied-5000User does not have the correct access to the file

Previous Book Contents Book Index Next

© Apple Computer, Inc.
2 JUL 1996