Hallo Martin,
die letzten beiden Varianten funktionieren. Nach dem Programmstart kann ich das Skript über das Menü aufrufen. Allerdings nur einmal. Wenn ich es noch mal aufrufen möchte erhalte ich folgende Fehlermeldung:
Fehelernummer: 30476
Fehelerzeichenfolge: Die angeforderte Aktion konnte nicht ausgeführt werden, da das Objekt nicht mehr existiert.
Hier noch mal mein komplettes Skript, ich habe oben bei targetengine auch schon session ausprobiert, ist das gleiche Ergebnis.
#targetengine "adobe"
myMenu = {};
myMenu.create = function() {
try{
var aMenu = app.menus.item("$ID/Main").submenus.item( "E/D/E");
aMenu.title;
} catch ( e ) {
var aMenu = app.menus.item("$ID/Main").submenus.add("E/D/E");
}
var aboutAction = app.scriptMenuActions.add( "Lagerliste erzeugen…" );
var aboutListener = aboutAction.eventListeners.add( "onInvoke", myMenu.doAbout );
var aboutMenuItem = aMenu.menuItems.item( "Lagerliste erzeugen…" );
if ( aboutMenuItem == null ) {
var aboutMenuItem = aMenu.menuItems.add( aboutAction );
}
}
myMenu.doAbout = function() {
app.doScript( File('/Users/andreaskruger/Library/Preferences/Adobe%20InDesign/Version%205.0/Scripts/Scripts%20Panel/Lagerliste_work.jsx'));
}
myMenu.create();
Antwort auf: Hallo Andreas,
wahrscheinlich ist der Pfad falsch adressiert.
Versuche es wahlweise mit
app.doScript( File( "Macintosh HD:Users:andreaskruger:Library:Preferences:Adobe InDesign:Version 5.0:Scripts:Scripts Panel:Lagerliste_work.jsx" ));
oder
app.doScript( File( "~/Library/Preferences/Adobe%20InDesign/Version%205.0/Scripts/Scripts%20Panel/Lagerliste_work.jsx"));
oder
app.doScript( File('/Users/andreaskruger/Library/Preferences/Adobe%20InDesign/Version%205.0/Scripts/Scripts%20Panel/Lagerliste_work.jsx'));