Uno no usaría DiskImageMounter para hacer esto porque, a pesar de que da la ilusión de que es scriptable y cargado con comandos en su diccionario AppleScript, nunca devuelve una referencia válida a ninguna imagen que abra; por lo tanto, AppleScript nunca es informado de que ha hecho el trabajo; y DiskImageMounter lo elimina, lo deja, e invalida la conexión con AppleScript lanzando un error. Y lo hace cada. Una. vez. Por lo tanto, es fiable bolas.
La forma de montar una imagen de disco con AppleScript es utilizar una aplicación que muy raramente avalo utilizar sino para muy pocas tareas específicas, que es Buscador . DiskImageMounter es la única aplicación menos fiable que Buscador pero Buscador es un trier, y tiene éxito con el montaje de volúmenes sin causar demasiado escándalo:
set f to POSIX file "/path/to/diskimage.dmg" as alias
tell application id "com.apple.Finder" to open f
Tampoco devuelve una referencia al volumen montado, pero puede obtener Buscador para enumerar los discos ya montados de antemano, y volver a enumerarlos después, y el nuevo que aparezca será su volumen montado:
set f to POSIX file "/path/to/diskImage.dmg" as alias
tell application id "com.apple.Finder"
set ejectables to disks
open f
repeat until disks ≠ ejectables
delay 1
end repeat
return the POSIX path of last item of (disks as alias list)
end tell
Finalmente... El JXA:
Finder=Application('com.apple.Finder');
f=Path('/path/to/diskImage.dmg');
Finder.open(f);