Apple Event 发送 Activate 报错
Apple Event sends Activate gives an error
我正在开发使用 AppleEvents 的 C 应用程序。
到目前为止,我正在尝试做一个将 Activate 发送到终端的简单示例。
这是我的:
int main()
{
AppleEvent theEvent;
char* arg = "com.apple.Terminal";
AEAddressDesc addDesc;
OSErr err = AECreateDesc( typeApplicationBundleID, &arg, strlen( arg ), &addDesc );
printf("AECreateDesc error --> %d\n", err);
if( noErr == err )
{
// my event creation
// create event:
err = AECreateAppleEvent( 'misc', 'actv', &addDesc, kAutoGenerateReturnID, kAnyTransactionID, &theEvent );
}
printf("AECreateAppleEvent error --> %d\n", err);
if (noErr == err)
{
AESendMode aeSendMode = kAEAlwaysInteract | kAEWaitReply;
//err = AESend( &theEvent, NULL, aeSendMode, kAENormalPriority, kAEDefaultTimeout, NULL, NULL );
err = AESendMessage(&theEvent, NULL, aeSendMode, kAEDefaultTimeout);
}
printf("AESend error --> %d\n", err);
return 0;
}
但是当我 运行 程序时它总是打印 AESend 错误 --> -600 我已经看到这意味着找不到进程
有人能告诉我这里有什么问题吗?
注意:我不想使用 AppleScript,我想使用这个,所以请不要推荐使用 AppleScript
提前致谢并问候
您应该致电:
OSErr err = AECreateDesc( typeApplicationBundleID, arg, strlen( arg ), &addDesc );
没有&
.
我正在开发使用 AppleEvents 的 C 应用程序。 到目前为止,我正在尝试做一个将 Activate 发送到终端的简单示例。 这是我的:
int main()
{
AppleEvent theEvent;
char* arg = "com.apple.Terminal";
AEAddressDesc addDesc;
OSErr err = AECreateDesc( typeApplicationBundleID, &arg, strlen( arg ), &addDesc );
printf("AECreateDesc error --> %d\n", err);
if( noErr == err )
{
// my event creation
// create event:
err = AECreateAppleEvent( 'misc', 'actv', &addDesc, kAutoGenerateReturnID, kAnyTransactionID, &theEvent );
}
printf("AECreateAppleEvent error --> %d\n", err);
if (noErr == err)
{
AESendMode aeSendMode = kAEAlwaysInteract | kAEWaitReply;
//err = AESend( &theEvent, NULL, aeSendMode, kAENormalPriority, kAEDefaultTimeout, NULL, NULL );
err = AESendMessage(&theEvent, NULL, aeSendMode, kAEDefaultTimeout);
}
printf("AESend error --> %d\n", err);
return 0;
}
但是当我 运行 程序时它总是打印 AESend 错误 --> -600 我已经看到这意味着找不到进程
有人能告诉我这里有什么问题吗?
注意:我不想使用 AppleScript,我想使用这个,所以请不要推荐使用 AppleScript
提前致谢并问候
您应该致电:
OSErr err = AECreateDesc( typeApplicationBundleID, arg, strlen( arg ), &addDesc );
没有&
.