【发布时间】:2013-11-29 12:10:15
【问题描述】:
我正在尝试从 Flex 的 AIR 桌面应用程序启动 iTunes 应用程序。但我无法像代码在 try catch 循环的 catch 错误中所做的那样。
下面是我用来从 AIR 中打开 iTunes 的 sn-p:
try
{
if(currentOS.indexOf("Windows") >= 0)
{
prepareFilesForSynciOS('Windows');
fileItunes = File.applicationDirectory.resolvePath("C:\\Program Files (x86)\\iTunes\\iTunes.exe");
//fileItunes1 = File.applicationDirectory.resolvePath("C:\Program Files (x86)\iTunes\iTunes.exe");
//Alert.show(" fileItunes " + fileItunes.nativePath);
//Alert.show(" fileItunes1 " + fileItunes1.nativePath);
if(!fileItunes.exists)
{
fileItunes = File.applicationDirectory.resolvePath("C:\\Program Files\\iTunes\\iTunes.exe");
//fileItunes1 = File.applicationDirectory.resolvePath("C:\Program Files (x86)\iTunes\iTunes.exe");
//Alert.show(" fileItunes 64 " + fileItunes.nativePath);
//Alert.show(" fileItunes1 64 " + fileItunes1.nativePath);
}
fileItunes.openWithDefaultApplication();
}
else if(currentOS.indexOf("Mac") >= 0 )
{
prepareFilesForSynciOS('Mac');
fileItunes = File.applicationDirectory.resolvePath("/Applications/iTunes.app");
fileItunes.openWithDefaultApplication();
}
}
catch(e:Error)
{
//Alert.show("iTunes was not found on this Computer.");
navigateToURL( new URLRequest("http://www.apple.com/itunes/download/"));
}
当我对错误消息发出警报时,我得到了 TypeError 1009。
感谢任何帮助。 :)
谢谢, Ankit。
【问题讨论】:
-
请澄清您的问题。什么不工作?你是说你的异常处理程序被触发了吗?你的 NRE 在哪条线上?由于警报是静态的,因此您的 catch 块中没有任何内容可以触发 NRE。
标签: actionscript-3 apache-flex air flex4 itunes