Mac OS 9
Aliases.h File Reference

Alias Manager Interfaces. More...

#include <MacTypes.h>
#include <Files.h>

Go to the source code of this file.

Data Structures

struct  AliasRecord
 

Macros

#define NewAliasFilterUPP(userRoutine)
 
#define DisposeAliasFilterUPP(userUPP)   DisposeRoutineDescriptor(userUPP)
 
#define InvokeAliasFilterUPP(cpbPtr, quitFlag, myDataPtr, userUPP)
 
#define NewAliasFilterProc(userRoutine)   NewAliasFilterUPP(userRoutine)
 
#define CallAliasFilterProc(userRoutine, cpbPtr, quitFlag, myDataPtr)    InvokeAliasFilterUPP(cpbPtr, quitFlag, myDataPtr, userRoutine)
 

Typedefs

typedef struct AliasRecord AliasRecord
 
typedef AliasRecordAliasPtr
 
typedef AliasPtrAliasHandle
 
typedef short AliasInfoType
 
typedef BooleanquitFlag
 
typedef Boolean Ptr myDataPtr
 

Enumerations

enum  { rAliasType }
 
enum  {
  kARMMountVol = 0x00000001 , kARMNoUI = 0x00000002 , kARMMultVols = 0x00000008 , kARMSearch = 0x00000100 ,
  kARMSearchMore = 0x00000200 , kARMSearchRelFirst = 0x00000400
}
 
enum  {
  asiZoneName = -3 , asiServerName = -2 , asiVolumeName = -1 , asiAliasName = 0 ,
  asiParentName = 1
}
 
enum  { kResolveAliasFileNoUI }
 
enum  { uppAliasFilterProcInfo = 0x00000FD0 }
 

Functions

OSErr NewAlias (const FSSpec *fromFile, const FSSpec *target, AliasHandle *alias)
 
OSErr NewAliasMinimal (const FSSpec *target, AliasHandle *alias)
 
OSErr NewAliasMinimalFromFullPath (short fullPathLength, const void *fullPath, ConstStr32Param zoneName, ConstStr31Param serverName, AliasHandle *alias)
 
OSErr ResolveAlias (const FSSpec *fromFile, AliasHandle alias, FSSpec *target, Boolean *wasChanged)
 
OSErr GetAliasInfo (AliasHandle alias, AliasInfoType index, Str63 theString)
 Get information from an AliasRecord. More...
 
OSErr IsAliasFile (const FSSpec *fileFSSpec, Boolean *aliasFileFlag, Boolean *folderFlag)
 
OSErr ResolveAliasWithMountFlags (const FSSpec *fromFile, AliasHandle alias, FSSpec *target, Boolean *wasChanged, unsigned long mountFlags)
 
OSErr ResolveAliasFile (FSSpec *theSpec, Boolean resolveAliasChains, Boolean *targetIsFolder, Boolean *wasAliased)
 
OSErr ResolveAliasFileWithMountFlags (FSSpec *theSpec, Boolean resolveAliasChains, Boolean *targetIsFolder, Boolean *wasAliased, unsigned long mountFlags)
 
OSErr FollowFinderAlias (const FSSpec *fromFile, AliasHandle alias, Boolean logon, FSSpec *target, Boolean *wasChanged)
 
OSErr UpdateAlias (const FSSpec *fromFile, const FSSpec *target, AliasHandle alias, Boolean *wasChanged)
 
typedef CALLBACK_API (Boolean, AliasFilterProcPtr)(CInfoPBPtr cpbPtr
 
typedef STACK_UPP_TYPE (AliasFilterProcPtr) AliasFilterUPP
 
AliasFilterUPP NewAliasFilterUPP (AliasFilterProcPtr userRoutine)
 
void DisposeAliasFilterUPP (AliasFilterUPP userUPP)
 
Boolean InvokeAliasFilterUPP (CInfoPBPtr cpbPtr, Boolean *quitFlag, Ptr myDataPtr, AliasFilterUPP userUPP)
 
OSErr MatchAlias (const FSSpec *fromFile, unsigned long rulesMask, AliasHandle alias, short *aliasCount, FSSpecArrayPtr aliasList, Boolean *needsUpdate, AliasFilterUPP aliasFilter, void *yourDataPtr)
 
OSErr ResolveAliasFileWithMountFlagsNoUI (FSSpec *theSpec, Boolean resolveAliasChains, Boolean *targetIsFolder, Boolean *wasAliased, unsigned long mountFlags)
 
OSErr MatchAliasNoUI (const FSSpec *fromFile, unsigned long rulesMask, AliasHandle alias, short *aliasCount, FSSpecArrayPtr aliasList, Boolean *needsUpdate, AliasFilterUPP aliasFilter, void *yourDataPtr)
 
OSErr FSNewAlias (const FSRef *fromFile, const FSRef *target, AliasHandle *inAlias)
 
OSErr FSNewAliasMinimal (const FSRef *target, AliasHandle *inAlias)
 
OSErr FSIsAliasFile (const FSRef *fileRef, Boolean *aliasFileFlag, Boolean *folderFlag)
 
OSErr FSResolveAliasWithMountFlags (const FSRef *fromFile, AliasHandle inAlias, FSRef *target, Boolean *wasChanged, unsigned long mountFlags)
 
OSErr FSResolveAlias (const FSRef *fromFile, AliasHandle alias, FSRef *target, Boolean *wasChanged)
 
OSErr FSResolveAliasFileWithMountFlags (FSRef *theRef, Boolean resolveAliasChains, Boolean *targetIsFolder, Boolean *wasAliased, unsigned long mountFlags)
 
OSErr FSResolveAliasFile (FSRef *theRef, Boolean resolveAliasChains, Boolean *targetIsFolder, Boolean *wasAliased)
 
OSErr FSFollowFinderAlias (FSRef *fromFile, AliasHandle alias, Boolean logon, FSRef *target, Boolean *wasChanged)
 
OSErr FSUpdateAlias (const FSRef *fromFile, const FSRef *target, AliasHandle alias, Boolean *wasChanged)
 

Detailed Description

Alias Manager Interfaces.

Introduced In: Mac OS 8.1
Avaliable From: Universal Interfaces 3.4.1
Copyright: © 1989-2001 by Apple Computer, Inc., all rights reserved

For bug reports, consult the following page on the World Wide Web:

http://developer.apple.com/bugreporter/

Macro Definition Documentation

◆ InvokeAliasFilterUPP

#define InvokeAliasFilterUPP (   cpbPtr,
  quitFlag,
  myDataPtr,
  userUPP 
)
Value:
(Boolean) CALL_THREE_PARAMETER_UPP((userUPP), uppAliasFilterProcInfo, \
(cpbPtr), (quitFlag), (myDataPtr))
unsigned char Boolean
Definition: MacTypes.h:318

◆ NewAliasFilterProc

#define NewAliasFilterProc (   userRoutine)    NewAliasFilterUPP(userRoutine)

support for pre-Carbon UPP routines: New...Proc and Call...Proc

◆ NewAliasFilterUPP

#define NewAliasFilterUPP (   userRoutine)
Value:
(AliasFilterUPP) \
NewRoutineDescriptor((ProcPtr)(userRoutine), uppAliasFilterProcInfo, \
GetCurrentArchitecture())
UniversalProcPtr NewRoutineDescriptor(ProcPtr theProc, ProcInfoType theProcInfo, ISAType theISA)

pascal 1_byte Func(4_bytes, 4_bytes, 4_bytes)

Typedef Documentation

◆ AliasInfoType

typedef short AliasInfoType

alias record information type

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
kARMMountVol 

define alias resolution action rules mask

kARMNoUI 

mount the volume automatically

kARMMultVols 

no user interface allowed during resolution

kARMSearch 

search on multiple volumes

kARMSearchMore 

search quickly

kARMSearchRelFirst 

search further

◆ anonymous enum

anonymous enum
Enumerator
asiZoneName 

define alias record information types

asiServerName 

get zone name

asiVolumeName 

get server name

asiAliasName 

get volume name

asiParentName 

get aliased file/folder/volume name

◆ anonymous enum

anonymous enum

ResolveAliasFileWithMountFlags options

Function Documentation

◆ DisposeAliasFilterUPP()

void DisposeAliasFilterUPP ( AliasFilterUPP  userUPP)

DisposeAliasFilterUPP()

Non-Carbon CFM: available as macro/inline
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ FollowFinderAlias()

OSErr FollowFinderAlias ( const FSSpec *  fromFile,
AliasHandle  alias,
Boolean  logon,
FSSpec *  target,
Boolean wasChanged 
)

FollowFinderAlias()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later
Parameters
aliascan be NULL

◆ FSFollowFinderAlias()

OSErr FSFollowFinderAlias ( FSRef fromFile,
AliasHandle  alias,
Boolean  logon,
FSRef target,
Boolean wasChanged 
)

FSFollowFinderAlias()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later
Parameters
aliascan be NULL

◆ FSIsAliasFile()

OSErr FSIsAliasFile ( const FSRef fileRef,
Boolean aliasFileFlag,
Boolean folderFlag 
)

FSIsAliasFile()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later

◆ FSNewAlias()

OSErr FSNewAlias ( const FSRef fromFile,
const FSRef target,
AliasHandle inAlias 
)

FSNewAlias()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later
Parameters
targetcan be NULL

◆ FSNewAliasMinimal()

OSErr FSNewAliasMinimal ( const FSRef target,
AliasHandle inAlias 
)

FSNewAliasMinimal()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later

◆ FSResolveAlias()

OSErr FSResolveAlias ( const FSRef fromFile,
AliasHandle  alias,
FSRef target,
Boolean wasChanged 
)

FSResolveAlias()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later
Parameters
aliascan be NULL

◆ FSResolveAliasFile()

OSErr FSResolveAliasFile ( FSRef theRef,
Boolean  resolveAliasChains,
Boolean targetIsFolder,
Boolean wasAliased 
)

FSResolveAliasFile()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later

◆ FSResolveAliasFileWithMountFlags()

OSErr FSResolveAliasFileWithMountFlags ( FSRef theRef,
Boolean  resolveAliasChains,
Boolean targetIsFolder,
Boolean wasAliased,
unsigned long  mountFlags 
)

FSResolveAliasFileWithMountFlags()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later

◆ FSResolveAliasWithMountFlags()

OSErr FSResolveAliasWithMountFlags ( const FSRef fromFile,
AliasHandle  inAlias,
FSRef target,
Boolean wasChanged,
unsigned long  mountFlags 
)

FSResolveAliasWithMountFlags()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later
Parameters
inAliascan be NULL

◆ FSUpdateAlias()

OSErr FSUpdateAlias ( const FSRef fromFile,
const FSRef target,
AliasHandle  alias,
Boolean wasChanged 
)

FSUpdateAlias()

Non-Carbon CFM: in InterfaceLib 9.1 and later
Carbon Lib: in CarbonLib 1.1 and later
Mac OS X: in version 10.0 and later
Parameters
targetcan be NULL

◆ GetAliasInfo()

OSErr GetAliasInfo ( AliasHandle  alias,
AliasInfoType  index,
Str63  theString 
)

Get information from an AliasRecord.

You use the GetAliasInfo function to get information from an AliasRecord
without actually resolving the record.
alias is a handle to the AliasRecord to be read.
index specifies the kind of information to be retrieved. If index is a
positive integer, GetAliasInfo retrieves the parent directory that
has the same hierarchical level above the target as the index
parameter (for example, an index value of 2 returns the name of the
parent directory of the target's parent directory). You can therefore
assemble the names of the target and all of its parent directories by
making repeated calls to GetAliasInfo with incrementing index
values, starting with a value of 0. When index is greater than the
number of levels between the target and the root, GetAliasInfo
returns an empty string. You can also set the index parameter to one
of the following five values.
Constant Description
asiZoneName If the record represents a target on an AppleShare
volume, retrieve the server's zone name. Otherwise,
return an empty string.
asiServerName If the record represents a target on an AppleShare
volume, retrieve the server name. Otherwise, return
an empty string.
asiVolumeName Return the name of the volume on which the target
resides.
asiAliasName Return the name of the target.
asiParentName Return the name of the parent directory of the target
of the record. If the target is a volume, return the
volume name.
theString receives the requested information.
Returns: an operating system Error Code .
noErr(0)No error
nsvErr (-35)The volume is not mounted
fnfErr(-43)Target not found, but volume and parent directory
found; if aliasCount is 1, target parameter contains a
valid FSSpec record
paramErr (-50)Alias, theString, or both are NIL, the index is less than
asiZoneName, or the AliasRecord is corrupt
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ InvokeAliasFilterUPP()

Boolean InvokeAliasFilterUPP ( CInfoPBPtr  cpbPtr,
Boolean quitFlag,
Ptr  myDataPtr,
AliasFilterUPP  userUPP 
)

InvokeAliasFilterUPP()

Non-Carbon CFM: available as macro/inline
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ IsAliasFile()

OSErr IsAliasFile ( const FSSpec *  fileFSSpec,
Boolean aliasFileFlag,
Boolean folderFlag 
)

IsAliasFile()

Non-Carbon CFM: in InterfaceLib 8.5 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ MatchAlias()

OSErr MatchAlias ( const FSSpec *  fromFile,
unsigned long  rulesMask,
AliasHandle  alias,
short *  aliasCount,
FSSpecArrayPtr  aliasList,
Boolean needsUpdate,
AliasFilterUPP  aliasFilter,
void *  yourDataPtr 
)

CALL_NOT_IN_CARBON MatchAlias()

Summary: Given an alias handle and fromFile, match the alias and return aliased filename(s) and needsUpdate flag

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later
Parameters
rulesMaskcan be NULL

◆ MatchAliasNoUI()

OSErr MatchAliasNoUI ( const FSSpec *  fromFile,
unsigned long  rulesMask,
AliasHandle  alias,
short *  aliasCount,
FSSpecArrayPtr  aliasList,
Boolean needsUpdate,
AliasFilterUPP  aliasFilter,
void *  yourDataPtr 
)

MatchAliasNoUI()

Summary: variation on MatchAlias that does not prompt user with a dialog

Non-Carbon CFM: not available
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later
Parameters
rulesMaskcan be NULL

◆ NewAlias()

OSErr NewAlias ( const FSSpec *  fromFile,
const FSSpec *  target,
AliasHandle alias 
)

NewAlias()

Summary: create a new alias between fromFile and target, returns alias record handle

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later
Parameters
targetcan be NULL

◆ NewAliasFilterUPP()

AliasFilterUPP NewAliasFilterUPP ( AliasFilterProcPtr  userRoutine)

NewAliasFilterUPP()

Non-Carbon CFM: available as macro/inline
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ NewAliasMinimal()

OSErr NewAliasMinimal ( const FSSpec *  target,
AliasHandle alias 
)

NewAliasMinimal()

Summary: create a minimal new alias for a target and return alias record handle

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ NewAliasMinimalFromFullPath()

OSErr NewAliasMinimalFromFullPath ( short  fullPathLength,
const void *  fullPath,
ConstStr32Param  zoneName,
ConstStr31Param  serverName,
AliasHandle alias 
)

NewAliasMinimalFromFullPath()

Summary: create a minimal new alias from a target fullpath (optional zone and server name) and return alias record handle

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ ResolveAlias()

OSErr ResolveAlias ( const FSSpec *  fromFile,
AliasHandle  alias,
FSSpec *  target,
Boolean wasChanged 
)

ResolveAlias()

Summary: given an alias handle and fromFile, resolve the alias, update the alias record and return aliased filename and wasChanged flag.

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later
Parameters
aliascan be NULL

◆ ResolveAliasFile()

OSErr ResolveAliasFile ( FSSpec *  theSpec,
Boolean  resolveAliasChains,
Boolean targetIsFolder,
Boolean wasAliased 
)

ResolveAliasFile()

Summary: Given a file spec, return target file spec if input file spec is an alias. It resolves the entire alias chain or one step of the chain. It returns info about whether the target is a folder or file; and whether the input file spec was an alias or not.

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ ResolveAliasFileWithMountFlags()

OSErr ResolveAliasFileWithMountFlags ( FSSpec *  theSpec,
Boolean  resolveAliasChains,
Boolean targetIsFolder,
Boolean wasAliased,
unsigned long  mountFlags 
)

ResolveAliasFileWithMountFlags()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ ResolveAliasFileWithMountFlagsNoUI()

OSErr ResolveAliasFileWithMountFlagsNoUI ( FSSpec *  theSpec,
Boolean  resolveAliasChains,
Boolean targetIsFolder,
Boolean wasAliased,
unsigned long  mountFlags 
)

ResolveAliasFileWithMountFlagsNoUI()

Summary: variation on ResolveAliasFile that does not prompt user with a dialog

Non-Carbon CFM: not available
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ ResolveAliasWithMountFlags()

OSErr ResolveAliasWithMountFlags ( const FSSpec *  fromFile,
AliasHandle  alias,
FSSpec *  target,
Boolean wasChanged,
unsigned long  mountFlags 
)

ResolveAliasWithMountFlags()

Non-Carbon CFM: in InterfaceLib 8.5 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later
Parameters
aliascan be NULL

◆ UpdateAlias()

OSErr UpdateAlias ( const FSSpec *  fromFile,
const FSSpec *  target,
AliasHandle  alias,
Boolean wasChanged 
)

Low Level Routines UpdateAlias()

Summary: given a fromFile-target pair and an alias handle, update the alias record pointed to by alias handle to represent target as the new alias.

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later
Parameters
targetcan be NULL