Skrip ini berfungsi dengan baik untuk saya dan sebagian besar pelanggan saya, tetapi untuk beberapa pelanggan itu gagal karena -1712; Saya tidak tahu kenapa. Saya sudah mencoba meningkatkan batas waktu, tetapi tidak ada bedanya.
File /tmp/itunes_model.txt
tidak dibuat sehingga sepertinya tidak melakukan apa-apa.
Bagaimana saya bisa men-debug / memperbaiki ini?
with timeout of 1200 seconds
tell application "iTunes"
if (count of every file track of library playlist 1) is equal to 0 then
set thePath to (POSIX file "/tmp/itunes_model.txt")
set fileref to open for access (thePath) with write permission
set eof fileref to 0
close access fileref
return
end if
tell every file track of library playlist 1
script performancekludge
property tracknames : its name
property locs : its location
property persistids : its persistent ID
end script
end tell
end tell
set thePath to (POSIX file "/tmp/itunes_model.txt")
set fileref to open for access (thePath) with write permission
set eof fileref to 0
tell performancekludge
repeat with i from 1 to length of its tracknames
try
set nextline to item i of its tracknames ¬
& "::" & POSIX path of item i of its locs ¬
& "::" & item i of its persistids
write nextline & linefeed as «class utf8» to fileref
end try
end repeat
end tell
close access fileref
end timeout
Menambahkan try-catch di sekitar kesalahan seperti yang diminta dan reran; pertama kali dijalankan itu benar-benar bekerja yang menarik, tetapi yang kedua gagal lagi tidak mendapatkan informasi yang lebih berguna.