AEPutAttributeDesc
AEPutAttributeDesc Create Apple Event attribute
#include <AppleEvents.h> Apple Event Manager
OSErr AEPutAttributeDesc( theAppleEvent, theAEKeyword,
theAEDesc );
AppleEvent * theAppleEvent ; Apple Event to add attribute to
AEKeyword theAEKeyword ; Apple Event keyword
AEDesc * theAEDesc ; descriptor record for the attribute
returns Error Code; 0 = no error
The AEPutAttributeDesc function takes a descriptor record and a keyword
and converts them into an attribute that it adds to an Apple event.
The parameter theAppleEvent is the Apple event to which you are adding an
attribute.
The parameter theAEKeyword is the keyword of the attribute. If there was
already an attribute with this keyword in the Apple event, it is replaced.
The parameter theAEDesc is the descriptor record to be assigned to the
attribute. The descriptor type of the specified descriptor record should match
the defined descriptor type for that attribute. For example, the
keyEventSourceAttr attribute has the typeShortInteger descriptor type.
If the descriptor type required for the attribute is different from the
descriptor type of the descriptor record, the Apple Event Manager attempts
to coerce the descriptor record into the required type, with one exception: the
Apple Event Manager does not attempt to coerce the data for an address
attribute, thereby allowing applications to use their own address types.
The keyword can be one of the following:
Attribute keyword Description
keyAddressAttr Address of target application
keyEventClassAttr Event class of Apple event
keyEventIDAttr Event ID of Apple event
keyEventSourceAttr Source of the Apple event
keyInteractLevelAttr Settings for allowing the Apple Event
Manager to bring a server application to
the foreground
keyMissedKeywordAttr First required parameter remaining
in an Apple event.
keyOptionalKeywordAttr List of optional Apple event parameters
keyReturnIDAttr Return ID for reply Apple event
keyTimeoutAttr Length of time in ticks that the client
will wait for a reply or a result from
the server
keyTransactionIDAttr Transaction ID identifying a series of
Apple events
Result codes
noErr (0) No error
memFullErr (-108) Not enough room in heap zone
errAECoercionFail (-1700) Data could not be coerced to descriptor type
errAENotAEDesc (-1704) Not a valid descriptor record