Bernie wrote: > The reason I make a local copy of the AE is I get a "Can't use a > register variable..." on compile. Just use # to pass the incoming pointer (theItem as ^AEDesc) to AECoerceDesc and AEGetDescData: err = fn AECoerceDesc( #theItem, _typeFSRef, #theItem ) long if ( fn AEGetDescData( #theItem, @ref, sizeof(FSRef) ) == _noErr ) Robert P.