我在iTunes 3個軌道和運行這個程序:假AppleScript的結果可可
-(IBAction)reloadButtonClick:(id)sender;
{
NSAppleScript *script ;
NSString *source ;
NSString *result;
NSDictionary *errorDic ;
NSAppleEventDescriptor *ed;
int total;
source= @"tell application \"iTunes\" to get count of tracks of playlist 1";
script = [[NSAppleScript alloc] initWithSource:source];
ed = [script executeAndReturnError:&errorDic];
if (ed == nil)
{
NSAlert *alert = [[NSAlert alloc]init];
[alert setMessageText:@"Error Occurred"];
[alert runModal];
[alert release];
}
result = [ed stringValue];
total = [result intValue];
NSAlert *alert = [[NSAlert alloc]init];
[alert setMessageText:[NSString stringWithFormat:@"%d",total]];
[alert runModal];
[alert release];
}
它總是返回0,並且不發生錯誤。但是,如果我在腳本編輯器中執行腳本,它將返回3.
任何人都知道什麼是錯的? AppleScript裏面可可不穩定?
謝謝。
PS:我的iTunes版本是8.0.2(20)
我很抱歉大家,我錯誤地聲明變量總數爲雙倍。這是一個全球變量。我將這個問題的總體聲明爲local int,但沒有嘗試。再次抱歉。 – Irwan 2010-01-19 01:44:41
它工作正常。 – Irwan 2010-01-19 01:45:07